1978_Series_8000_Microprocessor_Family_Handbook 1978 Series 8000 Microprocessor Family Handbook
User Manual: 1978_Series_8000_Microprocessor_Family_Handbook
Open the PDF directly: View PDF
.
Page Count: 400
| Download | |
| Open PDF In Browser | View PDF |
SERIES 8000
MICROPROCESSOR
FAMILY
HANDBOOK
NATIONAL
SEM ICON DUCTOR
Edge Index
~National
~ Semiconductor
Table of Contents
Introduction
The MICROBUS
The Series 8000 Microprocessor Family CPU Group
Designing Series 8000 Microprocessor Family Systems
Memory Components
MAXI-ROMs
Input/Output Components
Peripheral Control Components
Communications Components
Development Support
Programming
MICROBUS Electrical Specifications
Series 8000 Microprocessor Family Design Example
Additional Information Sources
Data Sheets
APPENDICES
CPU Group
DATA
SHEETS
Digital 110 Components
Peripheral Control Components
Communications Components
National does not assume any responsibility for use of any circuitry described, no circuit patent Licenses are
implied, and National reserves the right, at any lime without notice, to change said Circuitry.
© 1978 National Semiconductor Corp.
.1 .•
,
,>: •
';"
>"
"
',f,'
~National
Preface
~ Semiconductor
This handbook replaces the N8080 System Design Manual. The Series 8000 Microprocessor Family encompasses not only the INS8080A, but also many peripheral control components as well. The title change
reflects this increased emphasis on peripherals. This handbook provides design information pertaining to
the National Semiconductor Series 8000 Microprocessor Family . The material contained in this handbook is
presented at a level-of-detail 'sufficient for use in the design and development of microprocessor systems
using the proven INS8080A CPU and support components. The material is up-to-date at the time of publication and is subject to change without notice.
Copies of this publication and other National Semiconductor publications may be obtained from the
National Semiconductor sales office or distributor serving your locality.
Available data sheets are included in appendix D.
Related National Semiconductor Publications:
•
•
•
•
•
•
•
•
•
•
National's 8080A Microprocessor Family Quick Reference
Pace Resident Macro Assemblers Manual (for UDS - ba:sed8080 cross assembler)
Universal Development System Users Manual
Universal Development System Editor Users Manual
Universal Development System PROM Programmer Users Manual
LLL Basic Interpreter Users Manual
Microprocessor Family Product Guide
National's Spectrum of IC Components for Terminals
Microprocessor System Design Training
Microprocessor Applications in Business, Science and Industry
iii
Data Sheet Index
The Series 8000 Microprocessor Family Data Sheets availabl.e at time of publication are listed below and
included in. appendix D in the order shown (for memory data sheets refer to National's Memory
Databook):
0.1
INS8080A
INS8224
I NS8228/8238
0.2
TRI-STATE® 8-Bit Bus Driver 0000000000000000000000000000000000000000000 D-25
TRI-STATE 8-Bit Bus Driver (Inverting) 0000 000000000000000000000000000000 D-25
8-Bit Bidirectional Bus Driver 0000000000000000000000000000000000000000000 D-29
8-Bit I/O Port 0000000000000000000000000000000000000000000000000000000000 D-35
4-Bit Bidirectional Bus Driver 000 0000000000000000000000 0000000000 00or: 0000 D-43
4-Bit Bidirectional Bus Driver
(Inverting) 0000000000000000000000000000000000000000000000000000 00000; 000 D-43
Programmable Peripheral Interface 00000000000000000000000000000000000000 D-47
INS8255
PERIPHERAL CONTROL COMPONENTS
DP8350
INS1771-1
INS8253
INS8254
INS8257
INS8259
INS8298E*
0.4
8-Bit.Microprocessor 0000000 '00000000000000000000000000000000000000000000 D- 3
Clock Generator and Driver 000000000000000000000000000000000000000000000 D-13
System Controller and Bus Driver 000000000000000000000000000000000000000 D-19
DIGITAL I/O COMPONENTS
INS8202
INS8203
INS8208
INS8212
INS8216
INS8226
0.3
Page
CPU GROUP
Series Programmable CRT Controller 00 00. 0000000 0000000000000; 0000000000 D-59
Floppy Disk Formatter/Controller 0000000000000000000000000000000000000000 D-73
Programmable Timer 00; 000000000000000000000 000000000000000000• 00000000 D-91
Programmable 16-Bit Addressable
Peripheral Interface 000000000000 000000000000000000000000000000000000000 0 D-101
Programmable DMA Controller 00 0. 000000. 000000000000000000000000 000000 D-115
Programmable Interrupt Controller 0000000000000000000000000.0000000000. D-127
LLL BASIC Interpreter 0000000000000000.0.0000. 0000000000000000.0000000. D-139
COMMUNICATIONS COMPONENTS
INS1671
INS8250
INS8251
*NOTE:
ASTRO Communications Interface 00000000000000000000000.000000000000. D-145
Asynchronous Communications Element (ACE) 00000000000.0000000000.00 D-157
Programmable Communications Interface 0000000. 000000000000000000000.0-173
For the following devices, contact National's Microprocessor Marketing regarding
availability of devices and data sheets:.
INS9298E
INS8316
INS8332
INS8364
LLL BASIC Interpreter
(same as MM52116) 16K bit (2K x 8) ROM
(same as MM52132) 32K bit (4K x 8) ROM
(same as MM52164) 64K bit (8K x 8) ROM
iv
~National
~
Table of Contents
Semiconductor
Chapter 1 INTRODUCTION
1.1 GENERAL DESCRiPTION ........................................................................ 1·1
1.2 HANDBOOK ORGANiZATION .................................................................... 1·3
1.2.1 Introduction ................................................................................... 1·3
1.2.2 The MiCROBUS ............................................................................... 1·3
1.2.3 The Series SOOO Microprocessor Family CPU Group .............................................. 1·3
1.2.4 Designing Series SOOO Microprocessor Family Systems .......................................... 1·3
1.2.5 Memory Components .......................................................................... 1·3
1.2.6 MAXI·ROMs ................................................................................... 1·4
1.2.7 Input/Output Components .. : ........................................... , ...................... 1·4
1.2.S Peripheral Control Components ....... " ...........•........................................... 1·4
1.2.9 Communications Components ................................................................. 1·4
1.2.10 Development Support ..................'".. " ........................................... , ........ 1·4
1.2.11 Programming ......... " .............. " ............................. " ......................... 1·4
1.2.12 Appendices ...... " ............ " ................................... "." ........ " ............... 1·4
A MICROBUS Electrical Specifications
B Series SOOO Microprocessor Family Design Example
C Additional Information Sources
D Data Sheets
Chapter 2 THE MICROBUS
2.1 INTRODUCTION ......................................... " ...................................... 2·1
2.2 GENERAL DESCRIPTION ............................................... , ........................ 2·1
2.2.1 Basic MICROBUS Interface .........................................................•.......... 2· 1
2.2.1.1 Data Bus (D7·DO) ............................................................................. 2· 1
2.2.1.2 Chip Select (CS) .............................................................................."2·3
2.2.1.3 Read Strobe (RD) ............................................................................. 2·3
2.2.1.4 Write Strobe(WR) ............................................................................ 2·3
2.2.1.5 Reset (RESET) ............................................................................... 2·3
2.2.1.6 Ground (GNDJ ................................................................................ 2·3
2.2.2 Addressing Techniques .................................... ".................................... 2·3
2.2.2.1 Input Case ................................................................................... 2·3
2.2.2.2 Address/Chip Select Relationship ............................................................. 2·4
2.2.2.3 Bidirectional Addresses ...... " .. , ......... '" ............................................... 2·4
2.2.3 Interrupt Convention ............... , ........................................................... 2·4
2.2.4 Direct Memory Access (DMA) Transfers ...................................................... .'... 2'4
2.2.5 Ready Signal .................................................................................. 2·5
2.2.6 The Basic Interface Model ...................................................................... 2·5
Chapter 3 THE SERIES 8000 MICROPROCESSOR FAMILY CPU GROUP
3.1 INTRODUCTION ................................................................................ 3·1
3.2 INSSOSOA MICROPROCESSOR ...............................................•.................. 3·2
3.2.1 Architecture of the INSSOSOA ................................................................... 3·2
3.2.1.1 Register Array and Address Logic ............................................................. 3·2
3.2.1.2 ALU and Registers ........................................................................... 3·2
3.2.1.3 Instruction Register and Decoder .............. : ......................... , .................... 3·6
3.2.1.4 Timing and Control Unit ...................................................................... 3·6
3.2.1.5 Data Bus Buffer/Latch ........................................................................ 3·6
3.2.2 Operating Cycle ............................................................................... 3·6
3.2.2.1 Instruction Cycle and Related Timing ......................................................... 3·6
3.2.2.2 State Transition Sequence ................................................. " ................. 3·7
v
Table of Conte.nts (qontiriue~t
3.2.3 Data and Instruction Representation ............................................................ 3·9
3.2A Status Information ....................................................... , ...................... 3·9
3.2.5 Addressing Capabilities . .'..........................................................•........... 3·9
3.2.5.1 Immediate Addressing ...................................................................... 3·13
3.2.5.2 Direct Addressing ........................................•................................. 3·13
3.2.5.3 Register Addressing ....... -..................•.............................. : ....... , ....... 3·13'
3.2.5.4 Register Indirect Addressing .................... ~ ................................•.......... 3·13
3.2.6 Input/Output Operation and Control ...................................................... '" .. 3·13
3.2.6.1 Data Input Operations ....................................... : ....•........................... 3·13
3.2.6.2 Data Output Operations ..................................................................... 3;14
3.2.7 Interrupts ...................... : ..........................•............... : ................... 3·14
3.2.8 Ho.,d Oper~tions ............ " ......................... '.' .....................•................. 3·16
3.2:9 Microprocessor Halt .......................•... '................... : ......... : ......... ·........ 3·17
3.2.10 Initialization .................................................................................. 3·17
3.3 I NS8224 CLPCK GENERATOR AND DRiVER ................ : .................................... 3·17
3.4 INS822818238 SYSTEM CONTROLLER AND BUS DRIVER. '.' ...................................... 3·21
3.5 CPU CHIP SET ............................................ .' ..................................... 3·22
3.5.1 DM8131 6·Bit Unified Bus Comparator .... '.......................................... , .......... 3·22
3.5.2INS82[S050ne·of·Eight Binary Decoder ....................................................... 3·22
3.5.3INS8257 ProgrammableDMA Controller ........................................................ 3·24
3.5.4 INS8259 Programmable Interrupt Controller .............. , ............ ' ......................... 3·24
Chapter 4 DESIGNING SERIES 8000 MICROPROCESSOR FAMILY SYSTEMS
4.1 INTRODUCTION ..................................... '........................................... 4·1
4.2 CPU GROUP DESIGN ............................................................................ 4·1
4.2.1 Clock Generator and Driver Design .............................................................. 4·1
4.2.2 System Controller and Bus Driver Design ................................................ , ....... 4·1
4.3 ADDRESSING CONSIDERATIONS AND TECHNIQUES ............................................ 4·3
4.4 INTERFACING TO MEMORy ......... , ... ,' ......................................~ ................. 4·6
4:5 DYNAMIC MEMORy ....... , ..................................................................... 4·8
4.5.1 Introduction ........................................................................ : .. : ........ 4-8
4.5.2 RAM Chip Character'istics .......................................................... ; ........... 4·8
4.5.3 Memory Subsystem Design Considerations ........ : ............................................ 4·9
4.5.4 Summary .................................................................................... 4·11
4.6 INTERFACING TO INPUT/OUTPUT DEVICES .............................. ; ...................... 4·11
4.6.1 Input/Output Addressing ...................... : ............................................... 4·12
".6;2 Interfacing 8·Bit Peripherals ................ ; ........................ '" ....................... 4·14
. 4.6.3 Interfacing Serial Devices .......................... , .......................................... 4·14
4.7 EXPANDING INTERRUPTS ........................................ '............................... 4·15
4.8 USE OF INS8080A SUPPORT CHiPS ........................ '" .......... : '" ...... .- ............. 4·15
Chapter 5 MEMORY COMPONENTS
5.1 GENERAL DESCRIPTION ............................ " ......................... ; ............... : 5·1
5.2 ADDRESSING CONSIDERATIONS ............................................................... 5·1
5.3 INTERFACING TO MEMORy ..... ; ........................................ ,' ...................... 5·2
5.4 DYNAMIC MEMORy ............................................................,.................. 5.5
5.5 INS8154 128-by·8 BitRAM 110 .................................................................... 5·5
5.6 OTHER MEMORY COMPONENTS (DATA SHEETS IN APPENDIX D) ............................. ; ... 5·5
RAM
STATIC
1K
,
5.6.1
INS8101A·41K (256x4) Static RAM With Separate 1(0 ............ '............................. 5~5 .
5.6.2
INS8111A·4 1 K (256x4) RAM With Common 110 ........................•... : ... ; .... : ....... . 5-t
5.6.3
INS8102A 1K (1024x1) Static RAM .......... , ................ ;.; ........................... 5·10
4K
'
MM2114 4K (1024x4) Static RAM ..................... : .................................... 5·12
5.6.4
J,
vi
Table of Contents (Continued)
5.6.5
5.6.6
5.6.7
5.6.8
5.6.9
5.6.10
5.6.11
5.6.12
5.6.13
5.6.14
5.6.15
MM5257 4K (4096x1) Static RAM .......................................................... 5·14
DYNAMIC
4K
MM5281 4K (4096x1) Dynamic RAM ....................................................... 5·17
16K
.
MM5290 16K (16,384x1) Dynamic RAM .................................................... 5·18
EPROM
MM1702A (256x8) EPROM ............................................................... ~ 5·23
MM4204/MM5204 4K (512x8) EPROM ...................................................... 5-25
INS8704 4K (512x8) EPROM .............................................................. 5-29
I NS8708A 8K (1024x8) EPROM ............................................................ 5-32
ROM
M M4242/M M5242 8K (1024x8) ROM ....................................................... 5-35
INS8316A/E 16K (2048x8) ROM ............................................................ 5-37
INS8332E/MM52132 MAXI-ROM 32,768 Bit Read Only Memory (2708 Compatible)., .......... 5-39
INS8364E/MM53164 MAXI-ROM 65,536 Bit Read Only Memory .... : ......................... 5-40
(Also Available as 8298, See Chapter6, MAXI-ROMs)
Chapter 6 MAXI-ROMs
6.1 GENERAL DESCRiPTION ...............................................................·.......... 6-1
6.2 INTERFACING TO MEMORy ..................................................................... 6-1
6.3 UNPROGRAMMED MAXI-ROMs ............... : .................................................. 6-1
6.4 INS8298E'LLL BASIC INTERPRETER ........................................ , .................... 6-1
Operation
System Configuration
Chapter 7 INPUT/OUTPUT COMPONENTS
7.1 GENERAL DESCRiPTION ...........................' ............................................· .. 7-1
7.2 INTERFACING I/O COMPONENTS ............................................................... 7-1
7.3 INS8212 8-BIT INPUT/OUTPUT PORT ............................................................. 7-5
7.4 I NS8202/1 NS8203TRI-STATE OCTAL BUFFERS .................... ~ .......•....................... 7-6
7.5 I NS8208B 8-BIT BIDIRECTIONAL BUS DRIVER .................................................... 7-7
7.6 INS8216/INS8226 4-BIT BIDIRECTIONAL BUS DRiVER ........................................... 7-10
Chapter 8 PERIPHERAL CONTROL COMPONENTS
8.1 GENERAL DESCRIPTION .......... : ........................................ : ..................... 8-1
8.2 INTERFACING THE PERIPHERAL CONTROL COMPONENTS ...................................... 8-1
8.3 KEYBOARD ENCODERSIDISPLAY CONTROLLERS ............... : ................. ; ............. 8~1
8.3.1 I NS8244 90-Key Keyboard Encoder .............................................................. 8-2
8.3.2INS8245I1NS8246 Keyboard Encoders ................................................. ; ......... 8-3
8.3.3 INS824711NS8248 Display Controller ............................................•............... 8-4
8.4 PROGRAMMABLE INTERVAL TIMER (INS8253) ................................................... 8-5
8.5 FLOPPY DISC FORMATTER/CONTROLLER (INS1771·1) ........................................... 8·6
8.6 PROGRAMMABLE CRT CONTROLLER (DP8350) ................................................. 8-12
8.7 CHARACTER GENERATOR (I NS8285) ...................................................... : .... 8·14
8.8 CMOS 8-BIT A/D CONVERTER (I NS8292) ......................................................... 8-15
8.93·3/4 DIGIT DIGITAL VOLTMETER (INS8294) (MICROPROCESSOR COMPATIBLE) ................... 8-16
Chapter 9 COMMUNICATIONS COMPONENTS
9.1 GENERAL DESCRiPTION ........................................................................ 9-1
9.2 INTERFACING THE COMMUNICATIONS COMPONENTS .......................................... 9-1
9.31NS8250 ASYNCHRONOUS COMMUNICATIONS ELEMENT (ACE) .................................. 9-2
9.4 INS8251 PROGRAMMABLE COMMUNICATIONS INTERFACE .... : ................................ 9·3
9.5 INS1671 ASYNCHRONOUS/SYNCHRONOUS TRANSMITTER/RECEIVER ............ , .............. 9-4
vii
Table of Contents (Continued)
Chapter 10 DEVELOPMENT SUPPORT
10.1 GENERAL DESCRiPTION ...................................................................... 10-1
10.2 UNIVERSAL DEVELOPMENT SYSTEM (UDS1) .................................................. 10-1
10.2.1 Hardware Support.; ......................................................................... 10-3
10.2.1.1 Dual Diskette Drives ....................................................................... 10-3
10.2.1.2Disk/CRT Interface Card .................................................................... 10-3
10.2.1.3 Universal Development System .......... ; ...................... , ........................... 10-3
10.2.1.4 Peripherals ............................................................................ " .. 10-3
10.2.2 Software Support ............................................................................ 10-3
10.2.2.1 Monitor System (MONITOR) ........... ; .................................................... 10-5
10.2.2.2 File Input/Output Subsystem (FIOSYS) ...................................................... 10-5
10.2.2.3 File Manager Program (PACFM) .................... , ............ '" ........ , ................ 10-5
10.2.2.4 Supporting System Software ............................................................... 10-5
10.2.2.5 PACE 12K Resident Assembler (PAC 12ASM) ................................................ 10-5
10.2.2.6 Cross Assemblers for B060, B070, and BOBO .... ........ , ..................................... 10-5
10.2.2.7 UDS1 Editor (EDITOR) ...................................................................... 10-5
10.2.2.B Linkage Editor(LlNKEDiT) .................................................................. 10-5
10.2.2.9 Diskette Diagnostic Program (PFDDIA) ...................................................... 10-5
10.2.2.10 UDS1 Utility Programs ................................................................... 10-5
10.3 INSBOBOA CROSS ASSEMBLER ................................................................ 10-5
10.4 PROM PROGRAMMING ... : ............................ , ....... , .............................. 10-8
10.4.1 UDS1 PROM Programmer (Peripheral~ ......................................................... 10-B
10.4:2 UDS1 Serial Link Card .................... , ................................................. 10-'0
10.5 SERIES/SO FAMILY INCLUDING UNIVERSAL PROTOTYPE BOARD (BLC 905) ............... , ... 10-10
10.5.1 Series/80 System Design Aids ............................................................... 10-10
10.5.2 Board-Level Computers ...................................................................... 10-10
10.5.3 OEM Rack Mountable Computers ........................................................... 10-10
10.5.4 Memory Boards ............................................................................ 10-10
10.5.5InputlOutput and'Memory Expansion Boards ............................................•.... 10-10
10.5.6 BLC 604 System Chassis and BLC 614 Expansion Board Cage ................................. 10-10
10.5.7 RMC 660 System Chassis ................................................................... 10-11
10.5.S BLC 635 Power Supply .......................................... ; ........................... 10-11
10.5.9 BLC 6.65 Heavy Duty Power Supply .......................................................... 10-11
'10.6 PUBLICATIONS ............................................................................... 10-11
10.7 TRAINING ................................................................ : .................. 10-11
10.S NATIONAL'S MICROPROCESSOR l,JSERS GROUP ............................................. 10-12
10.9 Technical Support Programs ................................... ~ •.....•........................ 10-13
10.10 MICRO+ PROGRAM (Quality Control and Testing Process) .....•............................. 10-13
Chapter 11 PROGRAMMING
11.1 I NSBOBOA INSTRUCTION SET .................................................................. 11-1
11.1.1 Instruction and Data Formats ................................................................ 11·1
11.1.2 Addressing Modes ................".......................................................... 11-1
11.1.3 Condition Flags ............................................................................. 11-2
11.1.4 Presentation Format ......................................................................... 11-2
11.1.5 Data Transfer Group ......................................................................... 11-2
11.1.6 Arithmetic Group ............................................................................ 11-7
11.1.7 Logical Group .............................................................................. 11-10
11.1.S Branch Group .............................................................................. 11-13
APPENDICES
Appendix; A MICROBUS ELECTRICAL SPECIFICATIONS
A.1 GENERAL DESCRiPTION ........................................................ ·............... A-1
A.2 LOGICAL AND ELECTRICAL STATE RELATIONSHiPS ............................................ A-1
viii
Appendices (Continued)
A.3 DRIVER REQUIREMENTS ....................................................................... A·2
A.4 RECEIVER REQUIREMENTS .................................................................... A·2
A.4.1 Receiver Specifications, Standard ..................... ,........... , ............................ A·2
A.5 BIDIRECTIONAL SIGNALS ...................................................................... A·2
A.6 READ CYCLE TIMING ...................................... , ..................... , ............... A·2
A.7 WRITE CYCLE TIMING ........................... '" ................. , ..................... '..... A·5
A.B MICROBUS AND DEVICES ...................................................................... A·6
Appendix B SERIES 8000 MICROPROCESSOR FAMILY DESIGN EXAMPlE ............................ B·1
Appendix C ADDITIONAL INFORMATION SOURCES ............................................... ; .C·1
Appendix D DATA SHEETS
0.1. CPU GROUP ................. ; ........................ '......................................... 0·3
0.2 DIGITAL 1/0 COMPONENTS ................................................................... 0·25
0.3 PERIPHERAL CONTROL COMPONENTS ............................................. '" ....... 0·59
0.4 COMMUNICATIONS COMPONENTS ........................................................... 0·145
list of Illustrations
Figure
Title
Page
1·1 National Semiconductor Series BOOO Microprocessor Family Basic System Model (Example Using
INSBOBOA CPU Group) ........................................................................... 1·1
1·2 Series BOOO Microprocessor Family ............................................................... 1·2
2·1 Read Cycle· Fundamental Timing Relationships .................................................. 2·1
2·2 Write Cycle· Fundamental Timing Relationships .............. , ................................... 2·1
2·3 Interrupt Service . Interface Device Waveforms ... ~ ................................................ 2·4
2·4 Single Cycle DMA Transfer from an Interface Device to Memory ......................... '........ ',' . 2·5
2·5 Relationship of R'EADY toCS, WR, and RD ......................................................... 2·5
2-6 INSBOBOA S~ ~tem Model for tlfe Basic MICROBUS Interface ....................................... 2·6
2·7 INSBOBO Family CPU Group to MICROBUS Configuration ...................•...................... 2·7
2·B INSB060 System Model ................ ; ......................................................... 2·8
2·9 INS8070' Family System Model ..... ; .............................................. , ............. 2·B
3·1
3·2
3·3
3·4
3·5
3·6
3·7
CPU Architecture and Pinouts of INSBOBOA ., ..................................................... 3·3
Basic Instruction Cycle ........................................................ '...... : ........ '...-3·7
INSBOBOA CPU State Transition Flowchart ....................................................... . 3·B
Data Word Format ............................................................................... 3·9
Instruction Formats .................................. , ...................................... ' .. 3·10
I NSBOBOA Status Latch Circuit .................................................... , ...... : ...... 3·11
Data Input Operation Timing .......................................................... : ......... 3·14
3·B Data Output Operation Timing .................................................................. 3·15
3·9 Interrupt Timing .....................' ....................... , ................................... :3·15
3·10 Hold Operation Timing for MEMORY READ or INPUT Cycle .................................... , .3·16
3·11 Hold Operation Timing for MEMORY WRITE or OUTPUT Cycle ................................... 3·17
,3·12 Halt Timing ............................. , ........... , ......................................... 3·1B
3·13 Halt Sequence Flowchart .................................................................... " 3·1B
3·14 Relationship Between HOLD and INT in the HALT State ................................. , ....... 3·19
3·15 Initialization Timing ................................. , .................................... ~' ..... 3·19
3·16 I NSB224 Functional Block Diagram.'.................................................... , ....... 3·20
3·17 Relative Timing of I NSB224 Clock Output Waveforms ..................... '....................... 3·21
3·18 INSB224 to I NS8080A Interconnection .......................................................... 3·22
3·19 INS822811NS8238 Functional Block Diagram .................................................... 3·23
3·20 INSB22BIINSB238 to INSBOBOA Interconnection .. : .............................................. 3·24
3·21 Preferred Method of CPU Group Implementation ...................... , ......................... 3·25
ix
List of Illustrations (Continued)
3-22 DM8131 6-Bit Un.ified Bus Comparator ............................ , ........................... , .. 3-26
3-23 I NS82LS05 One-of-Eight Binary Decoder ........................................................ 3-26
3-24 INS8257 Programmable DMA Controller .......................... ; ............................. 3-27
3'251NS8259 Programmable Interrupt Controller ..................................................... 3-28
4-1 Preferred Method of CPU Group Implementation .................................................. 4-2
4-2 System Clock Generator and Driver Using Discrete Components ................................... 4-3
4-3 System Controller and Bus Driver Using Discrete Components ..................................... 4-4
4-4 Address Buffer Design Using INS8202 Devices ................. : .................................. 4-5
4-5 Mapping for Isolated Input/Output and Memory mapped Input/Output Techniques ................... 4-5
4-6 System Control Signals for Isolated Input/Output Addressing .............................. _....... 4·6
4-7 System Control Signals for Memory Mapped Input/Output Addressing .............................. 4-7
4-8 Typical Memory Interface ......................................' .................................. 4-7
4-9 Cell Comparison ................................................................................ 4-8
4-10 IDD Current Waveform ...............................•.......................................... 4-9
4-11 Damping Resistor Placement .................................................................. 4-10
4-12 Typical Input/Output Interface .............................. : .................................. 4:12
4-13 Example of Addressing INS8255 Devices Using Isolated Input/Output Technique and Linear Select. 4-13
4-14 Example of Addressing INS8255 Devices Using Memory Mapped Input/Output Technique and
Linear Select ................................................................................. 4-13
4-15 Addressing Format for INS8255 and INS8212 Devices ........................................... 4-14
4-16. Addressing Format for INS8251 Device ............ ,............................................. 4-15
4-171NS8259 Programmable Interrupt Controller ..................................................... 4-16
4-18 INS8259 Interrupt Expansion ................................................................... 4-17
5-1 Address Buffer Design Using INS8202 Devices .................................................... 5-1
5-2 Mapping for Isolated Input/Output arid Memory Mapped Input/Output Techniques ................... 5-2
5-3 System Control Signals for Isolated Input/Output Addressing ............................ " ........ 5-3
5-4 System Control Signals for Memory Mapped Input/Output Addressing ......... , .................... 5-3
5-5 Typical Memory Interface .......•.......................... , .......... ; .......................... 5-4
5,61NS8154 Block Diagram .................................................. : ....................... 5-6
5·7 INS8154 MICROBUS Connection .......................................... : ...................... 5-6
7-1 Typical InputlOutput Interface ........................................................... , ....... 7-2
7·2 Example of Addressing INS8255 Devices Using Isolated Input/Output Technique and Linear Select ... 7-3
7-3 Example Of Addressing INS8255 Devices USing Memory Mapped Input/Output Technique and Linear
Select .......................................................................................... 7-3
7-4 Addressing Format for INS8255 and INS8212 Devices ............................ ; ................. 7-4
7-5 Addressing Format for INS8251 Device ........................................................... 7-4
8-1 Interfacing the Peripheral Control Components ................................................... 8-1
8-2 INS8244 Internal Block Diagram .................................................................. 8-2
8-3 Typical Interrupt Driven Keyboard Interface ........................................................ 8-2
8-4 INS8246 Block Diagram ........................ : ................................................. 8-3
8-5 Typical MICROBUS Connection .................................................................. 8-3
8-6 INS8247 Internal Block Diagram ............................................... ; .................. 8-4
8-71NS8247 MICROBUS Interface .............•.................•.................................... 8-4
8-8 INS8253 .Internal Block Diagram .................................................................. 8-5
8-9 INS8253 MICROBUS Connection ............................................................ : ..... 8-5
8-10 Diskette Layout (Example) ............ ; ..............................................,........... 8-6
8-11 Read Timing ................•.................................................................. 8-7
8·12 Track Form",t (Diskette) ......................................................................... 8-8
8,~3 Interface to System Bus ......................................•.•............................... 8-9
8,14INS1771-1 Block Diagram .......................................................•.............. 8-10
8-15 Seek Command ... _..........................................•..........• ; ............. : ....... 8-11
10-1 Universal Development System (UDS1) ...................•.......................•... ~., ....... 10-1
10-2 UDS1 Block Diagram .......................................................................... 10-2
10-3 Top Internal View of Universal Development System .. _...........................•.............. 10-4
x
List of Illustrations (Continued)
10-4 Operational Sequence of the UDS1 Editor and Assemblers ....................................... 10-7
10-5 Universal Development System Configuration .................. " .............................. 10-9
11-1 Presentation Format .......................................................................... 11-3
A-1 Read Cycle Waveforms ......................................................................... A-3
A-2 Write Cycle Waveforms ......................................................................... A-5
B-1 Design Example (Basic Computer System) ....................................................... B-1
List of Tables
Table
Title
Page
2-1 Signal Lines (Referenced to the Interface Device) .................................................. 2-2
3-1 Input/Output Signal Descriptions ................................................................. 3-4
3-2 Status Information Distribution and Definition ................................................... 3-12
3-3 Status Bit Outputs for Each Type of Machine Cycle ............................................... 3-13
8-1 INS1771-1 Register Selection .................................................................... 8-9
8-2 Commands Summary ........................................................................... 8-11
10-1 Assembler Peripheral Options ................................................................. 10-6
11-1 Symbols and Notations ........................................................................ 11-3
11-28080 Instruction Summary .................................................................... 11-19
A-1 Class 1 Read Cycle Timing Specifications ........................................................ A-4
A-2 Class 1 Write Cycle Timing Specifications ........................................................ A-6
xi
r-o
MEMORY
~
Chapter 1
Introduction
INPUT10UTPUT
~
M
I
SERIES 8000
MICROPROCESSOR
~ C
M
R
0
B
U
S
PERIPHERAL
CONTROL
TM*
~
COMMUNICATIONS
I"""-
~
* Trademark, National Semiconductor Corporation
-_.
'-.:::s.,
Introduction
o
Q.
C
(")
o
:::s
1.1 GENERAL DESCRIPTION
The National Semiconductor Series 8000
Microprocessor Family covers the broad
general-purpose- segment of microprocessor
applications (see figure 1-1 for INS8080A example).
Included in the Series 8000
M,icroprocessor Family are the proven
INS8080A CPU and components of proprietary
designs as well as a wide range of multiple
source devices.
The Series 8000
microprocessor family finds use in 8-bit
microprocessor system designs ranging from
complex controls to highly sophisticated communications applications. Some of the user
benefits are listed below:
•
•
•
•
•
•
Family approach to system design
Complete CPU group
Programmable input/output concepts
Multiple source availability
Complete line of support components
Total product support
Most components of the Series 8000 Microprocessor Family are shown in figure 1-2. (For a
more nearly complete list, see chapter 10
references and specific publications such as
National's Memory Oatabook). Components
are discussed by type (see 1.2). Representative
of the type of CPU that can be used with the
Series 8000 Microprocessor Family is the INS8080A, an 8-bit CPU chip that may be used interchangeably with the Intel 8080A. The Series
8000 Microprocessor Family can be used in
systems that range from a few family components to designs that utilize the extensive
capabilities available. The INS8080A falls between the cost-effective 8-bit INS8060 chip and
the highly versatile 16-bit INS8900 chip in
National Semiconductor's microprocessor
spectrum. Any of these three microprocessors
can be used with Series 8000 peripheral
components.
The designer can satisfy memory requirements
,-----------,
,
rl~3r
~GM~
I~
...
~.------
~
R~
~
L---",_-,~
t
OPTIONAL
:
:
ADDRESS
BUFFERS
INS8212
OR
1-______.,...,.:
I :
INS8080A
MICROPROCESSOR
INS8216
M,
~~~~E~L....::.""-'--"'-I~I""'"u, n.
~'
..-----,
I
~
~
RAMs
I
: ADDR ES$
I BUS (16)
C
L-_ _ _ _- '
R
I
I L::~~:~~:_j
WAIT _ _
OMA REO_)
ROMs
',f----------1
~
INS 8224
CLOCK
RESET
GENERATOR ~
AND
READY
DRIVER
I---.
CHIP
SELECT
0
INTR
:
+-+
5
L-_ _ _ _- '
+l TM"
H~I+-I_ _ _ _"DA"T_A"BUiiiSoii(8")
DIGITAL 110
COMPONENTS
081N
ViR
INTA
"::::--I
INS8228llNS8238
. ._ _ _...O..
7-..
00-.t
A~~~~~O~~I~~R
L-_ _
SYSTEM
~
~
PERIPHERAL
CONTROL
COMPONENTS
,
I
CONTROL (6)
COMMUNICATIONS
COMPONENTS
'---_--' I
L ____________
J
Figure 1-1.
National Semiconductor Series 8000 Microprocessor Family
Basic System Model (Example using INS8080A CPU Group)
• Trademark, National Semiconductor Corporation
1-1
SERIES 8000
MICROPROCESSOR
I
I
i\:1
PART
'NUMBER
INS8101A·4
INS8102A
INS8111A·4
INS8154
INS8298E
INS8316A/E
INS8332E
INS8364/
8364E
INS8704
I NS8708A
MM1702A
MM2114
MM5204
MM5242
-MM5257
MM5281
MM5290
1'1
MICROBUS™
J fl
I rI
MEMORY
INPUT/OUTPUT
DESCRIPTION
256 x 4Static RAM with
Separate If0
1024 x 1 Static RAM
256 x 4 Static RAM with
Common I/O
128 x 8 Static RAM with
Common I/O
8080A LLL Basic Interpreter
2048 x 8 MOS Mask ROM
(2708 Compatible)
4096 x 8 MOS ROM
(2708 Compatible)
8192 x 8 MOS Mask ROM
(E has 2708 Compatibility)
512 x 8 EPROM
1024x8 EPROM
256x8EPROM
1024 x 4 Static RAM
512x8 EPROM
1024 x 8 ROM
4K x 1 Static RAM
4096 x 1 Dynamic RAM
16K Dynamic RAM
PART
NUMBER
INS8202
INS8203
INS82LS05
INS8208B
INS8212
INS8216
DESCRIPTION
Tri State 8 Bit Bus Driver
Tri State 8 Bit Bus Driver
(Inverting)
1 of 8 Binary Decoder
8 Bit Bidirectional 8us Driver
8 Bit I/O Port
4 Bit Bidirectional Bus
Driver
INS8226
INS8253
INS8255
INS8257
I NS8259
4 Bit Bidirectional Bus
Driver (Inverting)
Programmable Timer
Programmable Peripheral
Interface
Programmable DMA
Controller
Programmable Interrupt
Controller
PART
NUMBER
DP8350
INSI771·1
INS1791
INS8244
INS8245
I NS8246
INS8247
INS8248
I NS8254
INS8277
INS8285
I NS8292
INS8294
I r1
I rI '
PERIPHERAL
CONTROL
COMMUNICATIONS
DESCRIPTION
Series Programmable CRT Controller
PART
NUMBER
INS1671
Floppy Disk Controller
Dual Density Floppy Disk
Controller
90 Key Keyboard Encoder
16 Key Keyboard Encoder
20 Key Keyboard Encoder
4 Digit Display Controller
6 Digit Display Controller
Programmable 16 Bit Addressable
Peripheral Interface
Programmable CRT Controller
Character Generator
8 Bit AID Converter with
16 Channel Analog MUX
3'14 Digit DVM with Multiplexed
BCD Output
Figure 1-2. Series 8000 Microprocessor Family
I NS8250
INSB251
n
DESCRIPTION
ASTRO Communications
Interface
Asynchronous Communications
Element (ACE)
Programmable Communications
Interface
Development Support, covering how the
designer is aided, and then programming. Appendices are included next which give
reference data such as MICROBUS specifications, additional sources of information and
complete the manual with the available Data
Sheets for the devices referenced.
from the wide range of National Semiconductor's RAM, ROM, PROM, and MAXI-ROMTM*
components. IProgrammable input/output and
peripheral functions enable the system
designer to configure and adapt interface lines
to his own requirements. Data communications may be accomplished by using a variety of
Series 8000 Communications Peripherals.
1_2_1. Introduction
The Series 8000 Microprocessor Family is supported by industry standard design kits, easyto-use development systems, and a full complement of cross and resident
assemblers.
Various components and software also are
available to support the Series 8000
Microprocessor family from experimentation to
final production (see chapter 10, Development
Support).
Chapter 1, Introduction, gives a general view of
the Series 8000 Microprocessor Family and
discusses the plan of the Handbook. It identifies the key concepts that are used
throughout the Handbook such as the
MICROBUS, and discusses the relationship of
the various chapters to each other.
1.2.2 The MICROBUS
1.2 HANDBOOK ORGANIZATION
The MICROBUS chapter describes the use of
the system bus and its conventions. The bus
concept is developed, indicating bus usage for
various size systems, recognizing that most
systems will not need the entire MICROBUS
capability.
The major portions of the Series 8000
Microprocessor Family Handbook are as
follows:
•
•
•
•
•
•
•
•
•
•
•
•
Introduction
The MICROBUS
The Series 8000 Microprocessor Family
CPU Group
Designing Series 8000 Microprocessor
Family Systems
Memory Components
MAXI-ROMs
Input/Output Components
Peripheral Control Components
Communications Components
Development Support
Programming
Appendices
1.2_3 The Series 8000 Microprocessor Family
CPU Group
The discussion of the CPU Group includes as
an example, the INS8080A Microprocessor, the
INS8224 Clock Generator and Driver and the
INS8228/INS8238 System Controller and Bus
Driver. The architecture of the INS8080A is
discussed along with the operating cycle, data
Other key
and instruction representation.
topics such as addressing capabilities, Input/Output operation and control, and interrupts are examined in this chapter and then
referenced in following chapters. In particular
the next chapter on Designing Series 8000
Microprocessor Family Systems relies he.;tvily
on an understanding of the CPU Group as
discussed in this chapter.
The handbook takes the approach of introducing the system concept of the MICROBUS first,
since this is the System Bus used to interconnect the various Component Device Groups.An
example of a CPU group is discussed next to
form a base for discussing the various sizes of
systems that follow. With this base of information, the chapter on designing Series 8000
Microprocessor Family Systems is presented
next followed by detailed discussion of other
device types, so that the designer can pick the
chapters of interest that follow and skip the
rest. Chapters 5 and 6 discuss memory components including MAXI-ROMs, and their use in
storing large programs in ROM. Having covered
the various memory options, it is possible .to examine how Input/Output is included in the
system. This is treated in two chapters (7 and 8)
so that individual Input/Output Components
can be selected more easily.
1.2_4 DeSigning Series 8000 Microprocessor
Family Systems
The handbook is organized so that a designer
might start with this chapter and refer toeach
of the other chapters as needed, while considering the design requirements of the system
being designed for a particular application. For
example, a particular system might need powerful input/output capability and therefore
chapters 7 and 8 might be reviewed while con~idering approaches for the design of a system
with that capability.
1.2.5 Memory Components
The communications components allow data
transfer to remote locations, and are covered in
chapter 9. We next turn our attention to
* Trademark, National Semiconductor Corporation
The diversity of Memory options range from
small RAM to the mask programmable MAXIROM.
1-3
1.2.6 MAXI·ROMs
imagination gOing, and emphasize the range of
devices available, rather than give cook book
solutions to particular problems. (See appendix
C for .additional information sources.)
Mask programmable MAXI'ROMs may contain
complete programs. As an; example of the
possibilities, the 8298 LLL (Lawrence Livermore
Laboratory) BASIC interpreter for the INS8080A
is discussed. This program .resides in an INS·
8298E, (65,536 bit) static mask·programmable
ROM.
Various communications devices are covered
in this chapter.
1.2.7 Input/Output Components
1.2.10 Development Support
These devices receive a somewhat lighter
discussion than the Peripheral Control Com·
ponents because of their simplicity.
The
devices of a more complex nature (i.e.
Peripheral Control Components), are given a
more extensive treatment to make it easier for a
designer to feel comfortable in designing with
the devices. It is assumed that the designer
has considerable bacl(ground in the use of
similar I/O devices and other COmponent
Groups of concern in his deSign. The next two
chapters are companions to this one and are in·
tended to be used with it.
1.2.8 Peripheral'Control Components
The discussion of these devices is somewhat
grouped because of their typical use together,
although no rigid division is implied by chapter
divisionIS or order of discussion of devices. The
statement that the only limitation is the im·
agination of the designer applies perhaps
stronger with the I/O, than any other area of
design, for here is the interface capability to
other devices, equipment, and systems in the
outside world. The treatment in the two In·
put/Output chapters (7 and 8) and the com·
municationlSchapter (9), is intended to get the
1.2.9 Communication Components
This chapter identifies items of general sup·
port, such as the 8080 cross assembler, PROM
Programmer and the Universal Development
System (UDS), training ,and technical support.
(Also see appendixC for additional information
sources.)
1.2.11 Programming
In this chapter, programming topics are
covered from machine language through high
level languages. Reference is also made to
related programmable devices, such as Pro·
grammable Peripheral Control Components.
1.2.12 Appendices
In addition to general reference data, additional
information sources are identified in appendiX
C.
j
Available data sheets for the referenced
devices are grouped in Appendix D. Notice that
they are grouped by area of concern (i.e., CPU
group, Memory components, Digital I/O Com·
ponents, Peripheral Control Components,and
Communication Componentsl.
r"'r--
,......
.....-
MEMORY
Chapter 2
MICROBUS™
INPUT/OUTPUT
M
SERIES 8000
MICROPROCESSOR
~
r
I
C
R
0
B
U
S
TM'
.....-
PERIPHERAL
CONTROL
rI
COMMUNICATIONS
~
~
• Trademark, National Semiconductor Corporation
MICROBUS™
2.1 INTRODUCTION
MICROBUS, the National Semiconductor Stan·
dard for Microprocessor Interfaces, deals with
systems that use a·bit parallel means to
transfer digital data between MOS/ LSI
microprocessor CPUs and interfacing devices.
The interface system described herein allows
proximate components to communicate over a
unified bus system.
I
This standard applies to relatively small
systems representative of users' end products.
Typi'cally, these are systems where fewer than
ten integrated circuits are interconnected to a
common system bus, with buffering kept to a
minimum.
strobes and peripheral device (I/O) strobes.
Because it is actually the option of the system
designer whether he implements both sets of
strobes, only the generalized strobes are dis·
cussed in detail. The mnemonics to be used for
the memory strobes are MEMR and MEMW. The
mnemonics for peripheral strobes are IIOR and
IIOW. (Refer to Section 4.3 for discussion of
mapping peripherals in memory vs. I/O address·
ing space.)
GS
-J/
RD - - - - - - - - \ ' - -_ _
Application of this standard will provide the
user with a broad line of support devices which
can be effectively "plugged" into systems
without regard to complex timing or electrical
analysis, thereby making interfacing easy for
the system designer.
DoOD
.--~
70~-----
---
2.2 GENERAL DESCRIPTION
This standard applies to interface systems
used to interconnect electronic devices with
MOS/ LSI microprocessor systems. Devices
should have the following characteristics:
•
•
•
Data exchanged among the interconnec·
ting devices is digital (as distinct from
analog).
Total transmission path among intercon·
necting devices is electrically short. That
is, transmission line considerations are
negligible.
Number of devices interconnected on the
system bus is small (ten or fewer).
This standard defines the most general system.
The large majority of interfacing devices
employ only a subset of the signals. Signal
Lines are described in table 2·1. For details con·
tact National Semiconductor.
Figure 2·1.
DATA BUS DRIVEN
BY THE INTERFACE
DEVICE IN THIS
INTERVAL
4-
Read Cycle· Fundamental Timing
Relationships
r-
CS~
\\......_ _ _ _--'1
WR------~\~
__~/
x==
I
1
___---'x
DATA VALID
DATA BUS
PROVIDES VALID
DATA TO THE
INTERFACE DEVICE
IN TillS INTERVAL
Figure 2·2. Write Cycle· Fundamental Timing
Relationships
.
2.2.1 Basic MICROBUS Interface
The following paragraphs define the Basic
MICROBUS Interface S'ignals. Figures 2·1 and
2·2 illustrate the fundamental read and write cy·
cle timing.
The Basic MICROBUS Interface defines
generalized read and write strobes· RD and WR.
In actual systems there may be both memory
'Trademark, National Semiconductor Corporation
2.2.1.1 Data Bus (07-00)
These signal lines carry bit·parallel data infor·
mation, typically, implemented as eight TRISTATE input/output lines. In such a typical application status, control and data information is
transferred. In most applications, eight bits are
implemented.
2·1
)
,-<"
j
Table 2-t SIGNAL LINES (Referenced to the Interface Device)
FUNCTION
MNEMONIC
~UMBER
1:!f5
Data
07-00
8
Bidirectional
Genera:Jjzed Read Strobe
RD
Input
Generalized Write Strobe
WR
Input
Memory Read Strobe
MEMR
Input
Memory Write Strobe
MEMW
Inpuf
110 Read Strobe
IIOR'
Input
110 Write Strobe
1I0W
Input
Device (Chip) Select
CS
Inpu~
Reset
RESET
Input
Ground
GND
Power Supply
Address
A15-AO
Interrupt
16
Input
.INTR
Output
DMA Request
ORO
Output
DMA Acknowledge
DACK
Input
TC
input
Ready
READY
O.C. Output
Early Write Strobe
EWR
InPlit
Data Buffer Enable
DBE
Output
Data Buffer Out
DBO
Output
Address Buffer enable
ABE
Address Buffer Out
ABO
Terminal
C~unt
2-2
1~
Output
Output
In simpler, dellicated, interface applications,
these signal lines maybe unidirectional. Ex·
amples are, simple interface latches, keyboard
controllers, and display controllers.
reset, it should restore the head to track zero. A
mag tape device, however, should terminate
tape movement operations.
Each electro·
mechanical device must be considered
separately when determining what effect the
RESET input will have on its controlling states.
2.2.1.2 Chip Select (CS)
Whenever the RESET signal is applied, the interface device shall place its data bus and other
TRI·STATE system outputs into the high impedance state.
The device designer may
assume that the RESET input will be low for a
minimum of 100 /Lsec.
This input pin enables communication between
the interface device and the system. This
signal is a combinational active low state in·
dicator that the device is being addressed by
the system. The user/designer must accom·
modate transients on this signal during
changes in the address bus. Therefore, this
signal should be used as a combinational
enable function, i.e., level sensitive applica·
tions are O.K., edge sensitive are not.
Many MOS/LSI interface devices require an active high voltage RESET signal while most ex·
isting TTL devices use RESET. For this reason,
most systems will require both RESET and
RESET. Either reset signal is acceptable for
this standard. Future interface devices should
standardize on the RESET convention.
2.2.1.6 Ground (GND)
In a data transfer, the CS signal will envelope
the RD or WR signals.
2.2.1.3 Read Strobe (RD)
This signal provides Ov reference t6 the inter·
face device. All signals and voltages are ref·
erenced to GND.
A low state on this input pin enables the inter·
face device to send information to the system
via the data bus. This signal is the indicator to
the interface device, to provide data to the
MICROBUS whenever CS is also active (low).
Otherwise, the interface device data bus drivers
should be in the high impedance state.
2.2.2 Addressing Techniques
The first extension of complexity beyond the
Basic MICROBUS is the addition of addressing
capability. The addition of address signals to
the interface device provides a binary encoded
selection of device internal registers or memory
locations.
2.2.1.4 Write Strobe (WR)
A low on th~nput signal in combination with a
low on the CS input signal enables the transfer
of information from the MICROBUS to the interface device.
2.2.2.1 Input Case
Thes~JnputJilllnals,in
conjunction with the CS
and RD or WR inputs, control the selection of
data, control, or status information transfer be·
tween, the MICROBUS and the interfacing
device.
'
The data bus (DrDo) will be valid to the inter·
face device before the high to low transition of·
WR and will remain valid until after the low to'
high transition of WR.
A common example is the 8255 Programmable
Peripheral Interface. This device has .. two
address inputs (A1 and AO)' . Internal to the
device, there are three data ports - A, B, and C; a
status register; and a control register. The A, B,
and C data ports may be read or written and are
~ecifi~by the address inputs during the time
RD or WR is low. In this case, port A, B, or Cis
specified when the A1AO inputs are 00, 01:or 10
respectively. When the address inputs are 1t
and a read operation is performed, the 8255 pro·
vides.information from its status register to the
data bus. When the address inputs are 11 and 'a
write is performed, the 8255 command register
is loaded from the data bus.
.
Designers of new interface 'devices should not
rely upon data being valid on the leading edge
of the write strobe because some existing and
future microprocessors do not provide data
valid at this time.
2.2.1.5' Reset (RESEn
The RESET signal is supplied by the system to
all interfacing devices at power on time and
typically by a manual (pushbutton) operation.
Devices are'to be reset whenever the RESET
signal is in the low voltage state.
In this example, a write only and a read only
register share a common address. This is not a
preferred practice as it adds complexity to the
controlling software. Data written to write only
control or data registers must often be duplicated in RAM when independent bit operations
are to be performed on the register.
The reset signal should place all interfacing
devices into a known initial state. It is desirable
that every sequential storage element within an
interface device be initialized by this signal. For
example, when a floppy disk interface device is
2·3
2.2.2.2
signal with an interrupt output (INTR). The
START CONVERSION .input is replaced or
supplemented by a programmed I/O operation.
Address/Chip Select
Relationship
It is implied that the chip select signal, CS
(2.2.2) isa combinationalfunctionof the~system
address bus. Because of this relationship, transitions of CS are delayed from change:;; in the
addre:;;s bus. The timing specifications for the
C$ signal are derived from the typical implementation presented in appendix B.
DEVICE ACKNOWLEDGES
SERVICE COMPLETE
I
~
.....
DEVICE
INTR
~
2.2.2.3 Bidirectional Addresses·
In the future, interface devices will provide their
own address information during direct memory
access (OMA) transfers. In this class of interface device the address lines are outputs during OMA transfers and inputs during conven·
tional, programmed 110 transfers as described
in section· 4.3. Special control signals are
required to control external TRI-STATE address
buffers and latches needed for this type of
device. These sigf)als control the direction of
data through the TRI-ST ATE buffer and the TRIST ATE enable. They are named Address Buffer
Out (ABO) and Address Buffer Enable (ABE)
respectively.
cs
~,
SERVICE
REQUEST
/
)(
~
RD.WR
v
Figure 2-3. Interrupt Service - Interface Device
Waveforms
In the simplest case, the INTR output is set
high at END OF CONVERSION. The systemresponds to the interrupt by reading the AID output buffer ;.vhich sets the INTR low and simultaneously starts a new conversion. The 'reader
will notice that the START CONVERSION input
is not required. In practice it is desirable to
implement control and status registers to allow
the system to select how the interrupt and start
conversion systems will function.
2.2.3 Interrupt Convention
Interface devices often provide interrupts to the
system to request the initiation or indicate the
completion of a task.
In the standard bus environment, interface
devices may provide one or more interrupt
signals. In the singular case, this signal is
named INTR.lt is an active high signal that is
asserted in the high voltage state to request a
Program interruption.
In an 8080 system, the interrupt feature may be
implemented by adding an 8259. The interrupt
controller is added to the CPU group to provide
the MICROBUS interrupt inputs for interfacing
devices.
Once asserted high by the interface device lhe
interrupt signal must remain high unti.1 it is'serviced by the system. Typically, interrupts may
be serviced by the system taking action to
either identify or service the condition which
caused the interrupt. In all cases, this must be
implemented by a programmed 1/0 transfer between the system and the device. The particular
protocol for removal of the interrupt is depen·
dent upon the-type of device producing it.
2.2.4 Direct Memory Access (DMA) Transfers
Systems that provide DMA capability interface
to devices via two dedicated and one common
signal. Each DMA device controls its own OMA
request signal (ORO). The system responds to
ORO with a dedicated OMA acknowledge signal
(OACK). The third special signal forDMA is .the
terminal Gount (TC) indicator provided by the
system to the device to indicate that the present OMA cycle should be the last cycle for this
data block.
The interrupt signal may be asserted asynchronouslywith respect to other signals in the
system. See figure 2-3. It must be- removed~
th€ completion of the appropriate RO or WR
strobe when the CS and address inputs are
.
active.
An example of implementation is an AID converter designed to interface to the MICROBUS.
The device designer who wishes to make his
AID converter compatible with the MIC'ROBUS
will modify the classical control and timing
logic to replace the END OF CONVERSION
Figure 2-4 illustrates a typical OMA cycle in
which the device is providing data to the
In this type of DMA channel, a
system.
simultaneous read peripheral (lIOR) and write
memory operation (MEMR) is performed.
2-4
nDn
Typically, use of the READY signal requires
complex electrical design and timing analysis.
r'
~
\'--'''---J
Figure 2-5 illustrates timing relationships for
the READY signal. In this example, the system
initiates a read or write cycle to the device by
activating its RD or WR and CS inputs. If the interface device cannot respond within the
system access time requirements, it may assert
the READY signal low indefinitely until it has
had time to stabilize the data bus in a read
operation or accept the data in a write operation.
The device designer is cautioned to use the
READY feature only for access time extension
and not for synchronization because it may
severely impact system throughout.
TC
Figure 2-4. Single Cycle DMA Transfer from an
Interface Device to Memory.
~~--------~(F---------~;-))
The interface device designer should consider
the DACK signal to be equivalent to a special
chip select signal with equivalent timing relationships to the read and write strobes and TRISTATE enables of the MICROBUS.
RD or WR
\
__
r-
'------ifj----J
READY
Refer to manufacturer's literature for the standard 8257 DMA Controller for further detailed
discussion of the various modes and relationships possible for DMA interface devices.
Figure 2-5. Relationship of READY to CS, INR,
and RD.
In an 8080 system, DMA capability may be implemented by adding an 8257 DMA controller
and an 8212-8-Bit 1/0 Latch to the basic system
model.
2.2.6 The Basic Interface Model
From a device designer's viewpoint, this addition may be implied as part of the MICROBUS.
The specific. implementation and model for the
Basic MICROBUS Interface (Class 1) is the combination of the INS8080A CPU, 8224 Clock
Generator, 8228 System Bus Controller, and
This system model is
Chip Select Logic.
depicted in Figure 2-7. The expanded CPU
Group is shown in Figure 2- 8. Note the
use of the INS8259 at the bottom of the figure
to expand interrupts. See section 4.7 for expansion using INS8259.
2.2.5 Ready Signal
The READ'f.2.!.gnal is used to extend the period
of a RD or WR strobe. It is a system input that
may be driven by any number of interfacing
devices. Interfacing devices that cannot otherwise meet the access time requirements of the
system should provide a READY output to the
system. This output should not have an active
or passive connection to VCe( + 5V). It should
be open-collector (open drain if n-channel). The
system will provide a common resistive pull-up
• device for the READY signal.
Class 1 devices will also interface directly with
the INS8060 (SCIMP II) microprocessor system
model depicted in Figure 2-9. INS80T) system
model is shown in Figure 2-10.
2-5
AI5-AO
INS
80aOA
......
rc
A,S-AO
Jr.
,.
&So
CHIP
SELECT'
LOGIC
CSI
~
&Sj
M
I
.t
07-00
~1
~
07-00
~
p-
"II
MEMR
/12
INS
8228
I'
.
07-00
.
MEMW
IIOR
..
C
R
O
B
U
S
~
STSTO
IIOW
.
INS
8224
,..RESET
RESET
1
~1r1
~
Figure 2·6, INS8080A System Model for the
Basic MICROBUS Interface
For purposes of clarification:
°
• Class
devices are those which may
require special conditioning of their inter·
face to successf.ully function with micro·
processor systems.
load
limits:
I NS8080A.
INS8060,
INS8070,
• Class 2 devices are tailored for next·
generation microprocessors.
The
specification will be available in the
future.
• Class 1 devices perform with the'following
microprocessor CPUs when other bus
loading is within. the D.C. and capacitive
2·6
..-
REm
READY
.1
.2
RESET
READY
OP8224
CLOCK
GENERATOR
&
.~
DRIVER
SYNC
.L
"
WAIT_
HOLD
HLOA
INTR
I
CONTROL
SIGNALS
WR,OBIN
",
"
•
INS8080A
MICROPROCESSOR
HLOA
INTA
STSTB
CHIP
SELECT
CPU
DATA
BUS (8)
~
r--'"
MEMR
MEMW
DP8228/0P8238
SYSTEM
CONTROLLER
B1JS£Il
A15-AO
l7lJlI
ww
"&
07-00
READY
CS
RESET
i7ifW
If
-
110 R
MEMW
MEMR
MEMR
MEMW
IIOR
I/OW
RESET
elK
A7-AO
INS8257
A7-AO
i!J\CKO
M
I
C
R
0
B
U
S
OROO
IlAffi
cs
OROl
OACK2
OR02
ifACK3
OR03
READY
HOLD
HlOA
07-00
07-00
AEN AOSTB
•~
OS2
STB
INS8212
A15-A8
A15-A8
07-00
07-00
OSl
MO
ins 8259
~
07-00
07-00
INTR
CS
iNTA
AD
lfij
' 1 ' > - - SP
VIR
CS
AD
RO
WR
-INTR7- INTRO
IR7-IRO
~
Figure 2-7, INS8080 Family CPU Group to MICROBUS Configuration
2-7
CHI P
SElECT
LOG I C
&so
CSl
tTl
INS 8060
A11 • AO
M
I
C
R
0
8
U
S
NAOS
087·080
+5V
ifij
NlIDli
W1!
NWOS
Figure 2-8. INS8060 System Model
&so
CHI P
SELECT
LOG I C
{)
INS 8070
r-
CS 1
m
A15 - AD
A15 - AD
M
I
C
R
0
8
U
S
07-00
+5VT
ifij
NlIDli
W1!
NWDS
Y.rJ
Figure 2-9.
~
INS8070 Family System Model
2-8
MEMORY
Chapter 3
The Series 8000
Microprocessor
Family
CPU Group
INPUTIOUTPUT
INS8080A
MICROPROCESSOR FAMILY
Part Number/Description
M
::/(~i~j~r~ri~M))r\.
6
:H~if:~~;~"~;~~MM::::{'r- ~B
U
S
TM·
-
PERIPHERAL
CONTROL
COMMUNICATIONS
• Trademark, National Semiconductor Corporation
INS8080A
8 Bit CPU (2J'S)
INS8080A-1
8 Bit CPU (1.3/1s)
INS8080A-2
8 Bi~ CPU (1.5I's)
INS8080ADI .
8 Bit CPU (2J'S)
- 4O·C to + 85·C
INS8080ADI/883
8 Bit CPU (2J'S)
-40·Cto +85·C/883B
INS8224
Clock Generator & Driver
INS8228
System Controller & Bus Driver
INS8238
System Controller & Bus Driver
(Advanced Timing)
INS8257
Programmable DMA Controller
INS8259
Programmable Interrupt Controller
-t
:::r
The Series 8000
Microprocessor Family
CPU Group
CD
CJ)
CD
::l.
CD
en
Q:)
3_1 INTRODUCTION
This chapter provides detailed information on
the Series 8000 Microprocessor family of support chips that comprise. the INS8080A CPU
Group_ The information within this chapter is
intended to assist the Series 8000 designer by
providing both descriptions of the operating
characteristics of the devices and typical interconnection diagrams. Detailed parametric information on each of the CPU Group devices is
contained in appendix 0, Device Data Sheets.
•
•
Micro-Plus - testing, special reliability
and quality program
Full development system support - all the
way from the high-powered PACE
development system (with numerous
software packages and a DOS) to lowcost development systems (for PACE and
SC/MP) to do-it-yourself PACE and
SC/MP kits
National Semiconductor also offers the most
extensive line of CPU-to-peripheral support products - for digital input/output, communications, peripheral control, and memory. And National Semiconductor is expanding the support
lines, so you can expect to see even more!
National Semiconductor offers the broadest
line of microprocessors of any semiconductor
manufacturer in the world. National has expanded its microprocessor base so any
microprocessor application can be designed
and produced using its products. From the
simplest electronic toy or control mechanism
to large control arrays, point-of-sale systems,
and large data-processing systems, National
can supply your needs. Some of the features
and benefits of dealing with National follow.
National's INS8080A Family
Positioned between the cost-effective INS8060
and the highly versatile 16-bit I NS8900, Na-
o
o
o
3:
o
...
.g
gg
CD
en
en
o...
."
Q)
3
'<
("')
."
C
...
G')
o
C
'C
Digital 1/0
•
•
•
•
•
•
•
Cost effectiveness - because of our variety, our microprocessors afford designs
that can be tailored to a multitude of applications
Broad product family of microprocessors
and peripherals
16-1;!it COMPUTATION microprocessors
for precision control functions
8-Bit BYTE HANDLING microprocessors
for terminals
418-8it LOW-COST CONTROL micropro. cessors for industrial controllers
Second sourced families
Ready availability - off-the-shelf shopping
tional's INS8080A can be used in systems
which range from a few family components to
designs which utilize its full capabilities. National offers the broadest line of peripheral circuits and memories to complement the basic
INS8080A CPU. National's INS8080A features
and benefits:
•
•
•
•
•
•
3-1
Family approach to system design
Complete CPU group
Programmable input/output concepts
Multiple source availability
Complete line of support components
Total product support
National'is .lNS8080A family is supported by
industry-standard design kits, easy-to-use
, development systems, and a full complement
of cross and resident assemblers. Various
c'omponents and software also are available to
support the INS8080A family from experimenta·
tion to final production.
Register-Select Multiplexer. The Register array
is organizec,f into six 16-bitregisters as follows.
A Program Counter
A Stack Pointer
Three register pairs (BC, DE, and HL)
composed of six 8-bit {JEmeral-purpose
registers.
• . A register pair (Wand Z) composed of two
8-bit telTlPorary registers.
•
•
•
3.2 INS8080A MICROPROCESSOR
The basic INS80BOA CPU Group consists of
three components:
•
•
•
The Program Counter (PC) is a special-purpose
register that coritains the address of the instruction being executed; the PC is incremented during each instructi,on fetch. The
Stack Pointer (SP) is also a special-purpose
register and contains the address of the next
available stack' location in the external
read/write memory (RAM).
Using the SP
register, any area of the external memory may
be reserved as a last·in-first-out (LIFO) external
stack. The stack is used primarily for temporary
storage of the contents of the PC ,and all
general-purpose registers (including the AccumUlator) during subroutine execution and In·
terrupt Service Routine execution. The Stack
Pointer is decremented when data are
"pushed" onto the stack and incremented
when data are "popped" off the stack. In other
- words, the stack is filled from top to bottom.
The INS8080A Microprocessor
The INS8224 Clock Generator and
,
'Driver
The INS8228 System Controller
The INS8080A is an 8-bit microprocessor housed in a'standard 40-pin dual in·line package. The
chip is fabricated using N-channel silicon-gate
technology. The INS8080A has a 16-bit address
bus capable of addressing up to 65k bytes of
memory, 256 input/output devices. Data is
transmitted on a separate bidirectional 8-bit
TRI-STATE bus. The INS8080A directly provides signals to cqntrol the interface to memory
and I/O ports. The INS8080A has:
•
•
•
•
•
74 Instructions· Variable Length
6 General Purpose Registers plus an
accumulator
Variable Length Stack
Add.resses 256 Input and 256 Output
Ports
Multiple Addressing Modes
General-purpose registers B, C, 0, E, H, and L
can be used by the programmer as either single
S-bit secondary accumulators or as 16-bit
register pairs that function as data counters.
The HL register pair is the primary data counter
and provides the indirect memory address for
most memory-reference instructions (refer to
3.2.5). The BC and DE register pairs are used as
data counters for a limited number of memoryreference instructions (for example: STAX B,
STAX 0, LDAX B, AND LDAX D). Temporary
registers Wand Z, which are not under software
control,are only used as a 16-bit register pair
for the internal execution of instructions.
The INS8080A is an 8-bit CPU chip that may be
used interchangeably with the Intel 8080A. It
can be used in systems that range from a few
family components to designs that utilize its
full capabilities.
Detailedqescriptions of both the INS8080A In·
struction Set and the INS8080A parametric information is contained in the INS80S0A Data
Sheet in appendix D.
The Register-Select Multiplexer enables S-bit
data transfers between the Internal Data Bus
and the Register Array. Sixteen-bit transfers oc- .
cur between the Register Array and either the
Address Latch or the Incrementerll'-ecrementer. Any of the three register pairs (BC, DE, or
HL) routes its 16-bit data output to the Address
Latch, which in turn drives both the 16·bit
A15-AO Address Bus (via the associated 16-bit
unidirectional TRI-STATE Address Buffer) and
the Incrementer/Decrementer. The data output.
of the IncrementerlDecrementer is routed to the
Register Array. The 16-bit data may be either in. cremented; decremented, or merely transferred
betwee,n registers.
.
3.2_1 Architecture of the INS8080A
Figure 3-1 illustrates CPU architecture and the
pinouts of the chip. ' (Refer to table 3-1 for
descriptions of the INS80S0A chip pinouts.) The
INS8080~consists of the following major functional units: (1) Register Array and Address
. Logic, (2) Arithmetic and Logic Unit (ALU) and
Registers, (3) Instruction Register and Decoder,
(4) Timing and Control, and (5) Data Bus B,uf·
fer/Latch. Each of the major functional units
and its logic units are briefly discussed below.
3_2_1.1
Register Array and Address Logic
3.2.1.2 ALU and Registers
. This functional section of the CPU chip comprises a static RAM Register array, and Incre'menter/Decrementer, an Address Latch, and a
This functional section of the CPU chip includes the Arithmetic Logie Unit (ALU), an S-bit
3-2
DATA BUS
BUFFER/LATCH
I
(8·BIT)
INTERNAL OAT A BUS
~U-
-- - - - - - - - - - - - - - ,
AND
REGIST ERS
TEMP
REGISTER
(TMP)
ACCUMULATOR
AND LATCH
(ACe A ACT)
I
I
I
I
I
I
I
I
I
I
I
I
I
FLAG
REGISTER
t
I
ARITHMETIC
lOGIC UNIT
l
(ALU)
I-
Cf>
l
c.>
DECIMAL
ADJUST
L_
--------------(
128)
--::::::-- + 12V
PQWE
SUPPL
I
_
1
_ _ ...J
REGISTER
AND
DECODER
I
I
I
I...f..- r-t
I r
INSTRUCTION
REGISTER
I
L
r----
-- J
"NS~UC-:;ON-
(S-BITI
INTERNAL DATA BUS
I
I
I
I
I
I
I
:
I
I
INSTRUCTION
'OECODER
I
AND MACHINE
CYCLE
ENCODING
I
I
I
I
I
___ __ -.l
~
WR
(18)
DATA BUS
CONTROL
D81N
(17)
INTERRUPT
CONTROL
INTE
(16)
INT
(14)
HOLD
CONTROL
HOLD
ACK
(21)
HOLD
(13)
WAIT
124)
READY
(23)
W
TEMP REGISTER
B
REGISTER
0
REGISTER
H
REGISTER
SYNC
(19)
lOW ORDER --..
z
TEMP REGISTER
C
REGISTER
E
REGISTER
L
REGISTER
REGISTER
ARRAY
STACK POINTER (SP)
INCREMENTER/DECREMENTER
AND ADDRESS LATCH
r
SYNC
r
PROGRAM COUNTER (PC)
L ____
- - - - __ -1
ADDRESS BUFFER
1
CLOCKS
01
.2
122)
(15)
RESET
(12)
Figure 3·1. CPU Architecture and Pinouts of INS8080A
/"
HIGH ORDER ______
I
WAIT .
CONTROL
REGISTER-SELECT
MUL TIPtEXER
-;EG-;"E;l
ARRAY
AND
ADDRESS
LOGIC
I
TIMING AND CONTROL UNIT
WRT
----
ADDRESS BUS
140·29,27-25, 11
NOTE: APPLICABLE PINOUT NUMBE'RS
ARE INCLUDED WITHIN
PARENTHESES.
NSI0600
Table 3-1.
SIGNALMNEMONIC/
PIN DESIGNATION
Input/Output Signal Descriptions
DESCRIPTION
FUNCTIONAL NAME
READY (Input)
Memory or I/O
Synchronization
When high (logic 1), indicates that valid memory
or input d.ata are available to the CPU on the
I NS8080A External Data Bus. The READY signal
is used to synchronize the CPU with slower memory
or input/output devices. If the I NS8080A does not
receive a high READY input after sending out an
address to memory or an input/output device, the
I NS8080A enters a WAIT mode for as long as the
READY input remains low (logic 0). The CPU may
also be single stepped by the use of the READY
signal.
HOLD (Input)
Hold or DMA
Operations
When high, requests that the CPU enter the HOLD
mode. When the CPU is in HOLD mode, the CPU
address and data buses both are in the highimpedance state. The HOLD mode allows an external device to gain control of the INS8080A address
and data buses immediately following the completion of the current machine cycle by the CPU. The
CPU acknowledges the HOLD mode viathe HOLD
ACKNOWLEDGE (HLDA) output line. The HOLD
request is recognized under the following conditions:
The CPU is in the HALT mode .
The READY signal is active and the CPU is in
theT2 orTw state.
•
•
I
INT (Input)
I nterrupt Request
When high, the CPU recognizes an interrupt request on this line after completing the current
instruction or while in the HALT mode. An interrupt request is not honored if the CPU is in the
HOLD mode (H LOA = logic 1) or the Interrupt
Enable Flip·flop is reset (lNTE = logic 0).
RESET (Input)
Reset
When activated (high) for a minimum of three clock
periods, the content of the Program Counter is
cleared and'the internal Interrupt Enable and Hold
Acknowledge Flip-flops are reset. Following jI
RESE,T, program execution starts at memory location O. It should be noted that the Status Flags,
Accu":1ulator. Stack Pointer, and other registers are
not cleared during the RESET sequence.
SYNC (Output)
Synchronizing Signal
When activated (high), the beginning of a new
machine cycle is indicated and the status word
information is outputted on the External Data Bus.
WAIT (Output)
Wait Mode
When high, acknowedges that the CPU is in the
WAIT mode.
WR (Output)
Write
When low, the data,on the External Data Bus are
stable for WR ITE memory or OUTPUT operation.
3-4
Table 3-1.
Input/Output Signal Descriptions (Continued)
SIGNAL MNEMONIC/
PIN DESIGNATION
FUNCTIONAL NAME
HLDA (Output)
Hold Acknowledge
DESCRIPTION
Goes high in response to a logic 1 on the HOLD
line and indicates that the data and address buses
will go to the high-impedance state. The H LOA
begins at one of the following times:
The T3 state of a READ memory input
operation.
The clock period following the T1 state of a
WR ITE memory output operation.
I n both cases, the H LDA signal starts after the
rising edge of the >1 clock, and high impedance
occurs after the rising edge of the >2 clock.
•
•
I NTE (Output)
I nterrupt Enable
Indicates the content of the internal Interrupt
Enable Flip·flop. The Enable and Disable Interrupt
(EI and 01) Instructions cause the Interrupt Enable
Flip·flop to be set and reset, respectively. When the
flip·flop is reset (INTE ~ logic 0). it inhibits inter·
rupts from being accepted by the CPU. In addition,
the internal interrupt Enable Flip·flop is automat·
ically reset (thereby disabling further interrupts) at
the Tl state of the instruction fetch cycle, when an
interrupt is accepted; it is also reset by the RESET
Signal.
DBIN (Output)
Data Bus In
When high, indicates to external circuits that the
External Data Bus is in the input mode. The DBIN
Signal should be used to gate data from memoryor
an input/output device onto the External Data Bus.
A15 -Ao (Output)
Address Bus
This bus comprises 16 TRI·STATE®output lines.
The bus provides the address to memory (up to
65k bytes) or denotes the input/output device number for up to 256 input and 256 output peripherals.
DrDo (I nput/Output)
Data Bus
This bus comprises eight TRI-STATE input/output
lines. The bus provides bidirectional communication between the CPU, memory, and input/output
devices for instructions and data transfers. A status
word (which describes the current machine cycle)
is also outputted on the External Data Bus during
the first state of each machine cycle. (SYNC ~
logic 1).
>1 and >2 (Inputs)
Clock Inputs
Two non-TTL compatible clock phases that provide nonoverlapping timing references for internal
storage elements and logic circuits of the CPU.
+12V (Input)
+5V (Input)
-5V (Input)
GND
V OD Supply
Vce Supp.Jy
V BB Supply
,
Ground
Vss (0 volt) reference
3-5
\
Accumulator (ACC)" an 8-bit Temporary Accumulator (ACT), a 5-bit Flag Register, and an
8-bit Temporary Register (TMP)_ The 'ALU performs arithmetic, logical,'and rotate operations.
It is fed by the ACe, the ACT,and the Carry Flipflop of the 5-bit Flag Register. The results of
the ALU operation are transferred to either the
Internal Data Bus or the Accumulator. In addition, the ALU feeds the Flag Register. This
register contains flip-flops Which provide
storage for the five condition flags (Zero, Carry,
Sign, Parity, and Auxiliary Carry) associated·
with the execution of instructions in the
INS8080A. The Carry, Flag may be set or complemented by execution of the Set Carry or the
Complement Carry Instruction (refer to 8080
Data Sheet), respectively. The 8'bit Temporary
Register is loaded via the Internal Data Bus and
routes all or portions of its data to the ALU, the
Flag Register, and/or the Internal Data Bus. The
Accumulator serves as a link between the external memory and all other software-controlled
registers. The Accumulator is used in performing arithmetic and logic operations and for storing the results of these operations. Immediate
instructions, data transfers, shifts, and rotates
also use the Accumulator. The Accumulator
receives data from the ALU and the Internal
Data Bus and routes data to the Temporary Accumulator and the Internal Data Bus. During
the execution of the Decimal Adjust Ac- cumulator Instruction, the contents of the Accumulator and the Auxiliary Carry Flip-flop may
be tested for decimal correction (utilizing the
'
Decimal Adjust logic).
3.2.1.3
Units (both internal and extermil to the CPU) for
execution of the specified operation.
3.2.1.5 Data Bus Buffer/Latch
This major functional unit includes ,an 8-bit
Data Buffer and an 8·bit Latch. The 8-blt, Data
Buffer is a bidirectional TRI-STATE interface
that provides isolation between the Internal
Data Bus and the 0]"00 External Data Bus. In
the output mode, data or internal status infor·
mation on the Internal Data Bus initially is loaded into the 8-bit Latch. The outputs of the Latch
are then transferred to the External Data Bus via
the output Data Bus Buffer, which is in the highimpedance state during input or nontransfer
operations. In the input mode, external data are
transfered to the Internal Data Bus via the input
Data Bus Buffer, which is in the high·
impedance state during output or nontransfer
(DMA) operations. With the exception of the T3
state of a machine cycle (refer to 3.2.2.1), the Internal Data Bus is precharged at the start of
each internal state.
'
3.2.2, Operating Cycle
3.2.2.1 Instruction Cycle and Related Timing
An 1nstruction cycle of the INS8080A consists
of fetching an instruction from the program
stored in external memory and executing the
operation specified by the instruction. The
fetch routine first causes the instruction address to be transferred from the Program
Counter to the Address Bus via the output Address Latch. Next, an input data transfer (fetch
from memory) is initiated. When the selected
instruction (which may be one, two, or three
bytes in length) is subsequently placed on the
External Data Bus, the operation code byte is
loaded into Instruction Register. If the instruction consists of more than one byte, additional
states are required to fetch each byte of the in·
struction. In this case, the subsequent bytes
are place~ in temporary storage registers.
Instruction Register and Decoder
This functional section includes an 8-bit Instruction Register and an Instruction Decoder.
The Instruction Register stores byte 1 of the in:
struction during the execution cycle. This byte,
which contains the operation code, is transfer- '
red to the Instruction Register via the 'Internal
Data Bus. The succeeding Instruction Decoder
and control logic circuits thengerierate the required signals to, control the internal data
transfers and the timing of the new instruction,
which may require from one to five machine
cycles for execution (refer to 3.2.2.1).
After the complete instruction is present in the
INS8080A, the Program Counter is incremented
and the instruction is then executed in the reo
maining states of the instruction cycle. The
'instruction may call for a memory·read, a
memory-write, or an internal CPU operation
such as a register-to-register transfer or an addregisters operation.
3.2.1.4 Timing and Control Unit
TheTiming and Control Unit generates the state
and cycle timing signals, and maintains the proper sequences of events required for any proceSSing task. Two nonoverlapping external
clock inputs (>1 and >2) are accepted by the
Timing and Control circuits to furnish the timing references f9r all microprocessor actions.
In addition, the output of the Instruction
Decoder is combined with various timing
signals and external control inputs at the Tim·
ing and Control circuits to provide the control
and gating signals required by other functional
The basic instruction cycle (see figure 3-2) contains from one to five machine cycles, which
are referred to as M1, M2, M3, M4, and M5. Each
machine cycle, in turn, contains from three 'to
five states, which are referred to as T1, T2, T3, ,
T4, and T5. The duration of a T state is determined by the interval between two successive
positive-going transitions of the->1 clock pulse.
Depending on the 'type of instruction being ex-
3-6
STATES
/r----------------------------------L---------------.----------------___~
Ti
T,
0'
.2
b==db
.
h
'
-I
I
/A
•
I I
II
X
II
SYNC
~
READY
WAIT
I~
II, ,
ODIN
WR
~
w
M2
OF REQUIRED I
~
">u
w
M3
(IF REOUIRED I
Z
;:
U
:e'"
M.
(IF REOUIRED I
MS
(IF REQUIRED I
I
I
I
I
I
1
,1"15 Ao MEMORY
ADDRESS
07-00 STATUS
INFORMATION
A15 AO MEMORY
ADDRESS
07-00 ST A1 US
INFORMATION"
I
SAMPLE: READY
HOLD
SAMPLE: READY·
HOLD
HlTA
SAMPLE: READY·
HOLD
ADDRESS
SAMPLE: READY
°7-00 STATUS
INFORMATION
A15 An MEMOR'f
ADDR£SS
07-00 STATUS
INFORMATION
HOLD
I
,
-
L-.. WR ITE MODE
I
I
1\
I
I
II
I 1\
I
\
I
UNKNOWN
FLOATING
MEMORY ACCESS
TIME ADJUST
OPTIONAL
HALT OR
MEMORY ACCESS
TIME AnJ""T
OPTIONAL
MEMORY ACCESS
TIME ADJUST
OPTIONAL
MEMORY ACCESS
TIME ADJUST
MEMORY ACCESS
TIME ADJUST
I
I
I
I
I
I
I
I
I
01TA
OPTIONAL
I
~
OITA
FETCH
INSTRUCTION
INSTRUCTION
EXECUTION
INSTRUCTION
EXECUTION
{IF REQUIREDI
FETCH OR·
WRITE DATA
(IF REOUIRED)
FETCH ORWRITE DATA
FETCH 9R
WRITE DATA
OPTIONAL
. SAMPLE: READY
HOLD
\...
I
I
I
I
I
I
A15 AO MEMORY
ADDRESS OR I/O
NUMBER*" °7-00
STATUS INFO.
A15 AO MEMORY
~
I
V
rSTABLE
t LL-.REAOMODE
I
II (DATA
I
I
I
I
I
STATUS
INFORMATION
h
(HI-Z)
II
I
I
TS
h
I
I
-1
T.
h
.'~
I I
It
I
M'
\
T3
~I
.~
I
(
Tw
FETCH OR
WRITE DATA
INSTRUCTION
EXECUTION
(IF REQUIRED)
-EXCEPT DAD INSTRUCTION
NS 1060 1
Figure 3-2. Basic Instruction Cycle
INS8080A inputs an instruction byte from the
External Data Bus. During a MEMORY READ,
STACK READ, or INPUT machine cycle, the
INS8080A inputs a data byte from the External
Data Bus. In an INTERRUPT machine cycle, an
interrupt instruction of up to three bytes is jammed onto the External Data Bus and is routed to
the CPU. The I NS8080A outputs a data byte onto the External Data Bus during a MEMORY
WRITE, STACK WRITE, or OUTPUT machine cycle.
ecuted, a total of from 4 to 18 T states are required for a full instruction cycle.
Machine cycle M1 is always the operation-code
fetch cycle and lasts from four to five T states.
The duration of machine cycle M2, M3, M4, or
M5 is normally three T states. During state T1
of a machine cycle, the following occur: the
content of the Program Counter is placed on
the A15-AO Address Bus; the SYNC Signal
(related to the leading edge of the <1>2 clock) is
activated (high); and status information pertaining to the current machine cycle (refer to 3.2.4)
is outputted onto the External Data Bus. State
T1 is always followed by T2, during which time
the conditions of the READY and HOLD Signals
are tested. In order to proceed to the T3 state,
the READY Signal must be high (logic 1). If this
signal is low (logic 0), the INS8080A enters the
wait state (TW) and remains there until the
READY Signal goes high.
States T4 and T5 are available if required for
execution of a particular instruction. If the instruction being executed does not require
either of these states, the CPU proceeds from
the T3 state of a machine cycle directly to the
T1 state of the next machine cycle. The T4 and
T5 states are only used for internal processor
operations.
3.2.2.2 State Transition Sequence
The type of machine cycle in progress determines the events that take place during the T3
state. During a FETCH machine cycle, the
Figure 3-3 illustrates in flowchart form how the
INS8080A proceeds from the T1 through T5
3-7
YES
READY - HLTA
HOLD
MODE
[D
RESET HLTA
NOTES:
INTERRUPT ENABLE FLlP·FLOP ,
10
IS RESET IF INTERRUPT FLlp·FLOP
L../ IS SET.
~
INTERRUPT FLlp·FLOP IS RESET
IF INTERRUPT ENABLE'FLlP·FLOP
L/ IS RESET.
iJ"'- READY Nch SAMPLED FOR DAD
~ INSTRUCTION DURING M2 AND M3.
REFER TO HOLD SEQUENCES
DISCUSSION (2.9).
r.;-\.
L/
Figure 3-3. fNS8080A QPU State Transition,Flowchart
3-8
NS'0602
states of a machine cycle during the execution
of an instruction. The actual number of states
involved in a machine cycle depends on the instruction being executed and on the particular
machine cycle of the instruction. The flow
diagram also shows how the READY, HOLD,
and INT lines are sampled during the machine
cycle, and how the conditions on these lines affect the basic transition sequence. Only the
basic sequence and the WAIT sequence are
discussed below. The HOLD and INTERRUPT
sequences are discussed later in this chapter.
ecuted. The first byte of an instruction contains the operation code. The second or third (if
applicable) byte of a multiple-byte instruction
contains either data or addressing information.
Multiple-byte instructions must be stored in
consecutive memory locations. For a multiplebyte instruction, the address of the first byte is
used as the address of the instruction.
3.2.4 Status Info,rmation
The I NS8080A outputs an 8-bit status word onto
the D7-DO External Data Bus during the first
state (SYNC interval) of each machine cycle to
identify the machine cycle in progress. A latch
circuit for storing the status word for control of
external circuits is illustrated in figure 3-6. (A
similar latch is included in the I NS8228JINS8238 System Controller and Bus Driver.)
Table 3-2 defines the status information and indicates how this information is distributed on
the External Data Bus. Table 3-3 lists the status
bit outputs for each type of machine cycle.
In the basic sequence, the INS8080A does not
wait for memory, does not hold, and is not
halted. During this sequence, the READY input
is held high, the HOLD input is held low, and
the HALT Instruction is not executed. The
I NS8080A enters the WAIT sequence as a result
of sampling a low READY Signal during the T2
state of every machine cycle, except for DAD
(add Register Pair to Hand L Registers) Instructions. (When executing DAD Instructions, the
READY input is only sampled during the M1
machine cycle.) The WAIT sequence enables
the·INS8080A to adjust its processing cycle
time to match the slower access time of the
state.
memory which requested the WAIT
Beginning at T2, the memory must hold the
READY line low for a number of clock cycles
equal to the number to TW states to be inserted
in the machine cycle. The actual number of TW
states to be inserted is determined by external
logic that is user-designed. The INS8080A
does not furnish a control output during each
state to directly indicate its internal state. Instead the microprocessor indicates the internal
state by supplying INTE, HLDA, DBIN, ViTR, and
WAIT control signals to the external circuits.
3.2.3
3.2.5 Addressing Capabilities
The INS8080A chip has a 16-bit address
capability, thus allowing anyone of 65,536
memory locations to be uniquely specified.
Data to be operated on are often stored in
memory. When multi-byte numeric data are
used, the data must be stored in consecutive
memory locations. In this case, the least
significant byte is stored first, followed by progressively more significant bytes.
Either the Program Counter, the Stack POinter,
or one of the 16-bit register pairs (BC, DE, and
HL) is used in each memory-reference instruction. The Program Counter is always used to
specify the addresses of program instructions
(or data); it provides for the increasingly sequential execution of instructions, except when
an interrupt or a branch instruction is effected.
The Stack Pointer and the register pairs are
used for other addressJdata requirements. The
INS8080A has four different modes for addressing data· stored in memory or in registers:
these are immediate, direct, register, and
register indirect.
Each of the addressing
modes is discussed below.
Data and Instruction Representation
An 8-bit binary word or byte (see figure 3-4) is
used to represent data in the INS8080A. Bit DO
is the least significant bit (LSB) of the data
word. The INS8080A instruction repertoire includes 1-byte, 2-byte, and 3-byte instructions
(see figure 3-5). The exact instruction format
depends on the particular operation to be ex-
BYTE
/
,
I
1~__D_7__~__D_6__~_'_D_5__~__D_4__~__D_3__~__D_2__~__D_l__~__D_O__-,I----BOTNUMBE.
NSf 0603
Figure 3-4. Data Word Format
3-9
1~__ ~ os __~___ ~_0_4 ~
0_7__
___
05 __
__
__0_3__
~
__0_2__
~_0 '~
__0_0__
~1 OPCODE
lo,coDE
___
A. One-Byte Instruction
Bv"'l
07
Os
05
°4
03
O2
0,
DO
BVT"I
07
Os
05
04
03
02
0,
DO
1
DATA OR
ADDRESS
B. Two-Byte Instruction
I
07
Os
05
04
03
O2
0,
DO
IO'COOE
BVT"I
07
Os
05
04
03
02
0,
DO
1ADORESS
DATAOR
BVTE31
07
Os
05
04
03
02
0,
DO
IADDRESS
DATAO~
BVTE1
I
C. ThrH-Byte Instruction
NS'0604
Figure 3-5. Instruction Formats
3-10
10
DO
01
9
O2
8
DO
01
O2
7
°3
07
SYNC
06
::6
07
19
17
STATUS
LATCH
OBIN
92
4>1
~
...
CPU EXTERNAL
05
5'
06
l
0 4 , DATA BUS
4
05
I NS8080A
MICROPROCESSOR
03
3
04
J 22
15
3......
DOD
Dll
5
7
9.....
16
~
INS8212
INPUT/OUTPUT
PORT
(TTL)
22......
r,i
HLTA
~ INP
20
¢i
STACK
~ OUT
~
18.....
CLOCK
GENERATOR
AND DRIVER
~ INTA
wo
~
8
Ml
~
Dl8
CLR
OS2
.13
00 7
MO
12
I
VCC
Figure 3-6, INS8080A Status Latch Circuit
I
BASIC
CONTROL
BUS
~ MEMR
OSl
11
~
OBIN
NS70605
Table 3·2. Status Information Distribution and Definition
SIGNAL MNEMONIC
DATA BUS
BIT NUMBER
INTA
Do
Acknowledge signal for an Interrupt Request. When
DBIN signal is high, the INTA signal should be used
to gate an instruction (for example, Restart <;>r
Jump to Interrupt Service Routine) of up to three
bytes onto the DrDo Data Bus. The INTA signal
can also be used to control the flow of data onto
the External Data Bus.
WO
0,
When low, indicates that the current machine cycle
will be either a WRITE memory or OUTPUT oper·
atipn. When high, a READ memory or INPUT
operation will be executed.
STACK
0,
When high, indicates that the A'5 -Ao Address Bus
contains the pushdown stack address from the
Stack Pointer (SP).
HLTA
D3
Goes high to acknowledge a Halt Instruction.
OUT
04
When high, indicates that the A15-AO Address Bus
contains the address of an output device and that
the External Data Bus will contain the output data
when the WR is low.
M,
DEFINITION
Goes high to indicate that the INS8080A is in the
fetch cycle for the first byte of an instruction.
~ D5
INP
D6
When high, indicates that the A15-AO Address Bus
contains the address.of an input device and that
the Data Bus will contain the input data when the
DBIN signal is high. The INP signal can also be
used to control the flow of data onto the Data Bus.
MEMR
D7
When high, indicates that the Data Bus will be used
for READ memory data. The MEMR signal can
also be used to control the flow of data onto the
Data Bus.
3·12
Table 3-3. Status Bit Outputs For Each Type of Machine Cycle
DATA BUS BITS
STATUS
WORD
TYPE
D7
D6
Instruction Fetch
1
1
Memory Read
2
1
Memory Write
3
Stack Read
4
TYPES OF MACHINE CYCLES
D5
D4
D3
D2
D1
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
Do
Stack Write
5
0
0
0
0
0
1
0
0
Input Read
6
0
1
0
0
0
0
1
0
0
Output Write
Interrupt Acknowledge
7
0
0
0
1
0
0
0
8
0
0
1
0
0
0
1
1
9
1
0
0
0
1
0
.1
0
10
0
0
1
0
1
0
.
Halt Acknowledge
Interrupt Acknowledge While Halt
3.2.5.1 Immediate Addressing
1.
1
bits of the address are in the second 8-bit
register (C, E, or L).
In this mode, the instruction contains the required data in either the second byte (8-bit data
quantity) or the second and the third bytes
(16-bit data quantity). When the data represent
a 16-bit quantity, the least significant byte is
first, followed by the most significant byte. The
immediate addressing mode is relatively fast
because an additional data address is not
formed, nor is an additional memory access required to fetch data.
.
3.2.6
Input/Output Operation and Control
High-speed data transfers between the
microprocessor, memory, and input/output
peripheral deyices are made in parallel. The
data and address ports of the INS8080A chip
are connected to memory or other peripherals
via an 8-bit bidirectional External Data Bus and
a 16-bit unidirectional Address Bus, respective- ,
Iy. Various timing and control signals (for example, SYNC, DBIN, and so forth) and status
information are generated during the data
transfers.
3.2.5.2 Direct Addressing
In this mode" the instruction contains the exact
memory address of the required data or instruction in the second and third bytes. Byte'2 contains the lower-order bits of the memory address and byte 3 contains the higher-order bits.
Jump and Branch Instructions are executed via
the direct addressing mode. It is also used for a
limited number of memory-reference instructions.
3.2.6.1 Data Input Operations
The input cycle consists of reading data from
either a specified memory location or from an
input peripheral device. Timing is shown in
figure 3-7 for a data-input operation. As shown,
status information is initially transferred onto
the 07-00 External Data Bus during the SYNC
signal interval. The low-to-high transition of the
<1>2 clock during state T2 clears the status inforrnation from the External Data Bus, preparing
the bus for the receipt of incoming data. At this
time, the A15-AO Address Bus contains a valid
address and anyone of 65,536 memory locations or 256 input peripheral devices may be
selected. Data subsequently placed on the
07"00 Data Bus by memory or an input
peripheral device then are sampled during the
T3 state of a machine cycle. During the inputting of data to the microprocessor, the INS8080A generates a high DBIN Signal which is
used externally to enable the data transfer. The
DBIN signal is initiated by the leading edge of
the <1>2 'clock during state T2 and is terminated
by the leading edge of the <1>2 clock during state
3.2.5.3 Register Addressing
The register addressing mode is conceptually
identical to the direct addressing mode. In the
register addressing mode, a one-byte instruction is used to specify the register or the
register pair in which the required data are
located.
3.2.5.4 Register Indirect Addressing
In this mode, a 1-byte instruction specifies a
register pair (or Stack Pointer) that contains the
exact memory location of the required data or
instruction. The high-order bits of the memory
address are in the first 8-bit register-.(B, 0, or H)
of the specified register-pair and the low-order
3-13
.'
.'
At5-Ao
07-0 0
SYNC
oalN
REAOV
WAIT
Wi!
"0"
"'"
I
STATUS
INFORMATION
+-_...J
I
INPUT
READ
FETCH
CYCLE
CYCLE
I
I
NOTE: THE READY, WAIT, ANDWR SIGNALS DO NOT CHANGE STATE AND
ARE IN THE LOGIC STATES DESIGNATED CONTINUALI. Y
NS10606
Figure 3-7. Data Input Operation Timing
3.2.7 Interrupts
T3. (During the WAIT sequence, the DBIN
signal is extended one or more clock periods by
any TW states intervening between states T2
and T3.) Machine cycles during which the DBIN
signal is generated include FETCH, MEMORY
READ,. STACK READ, and INTERRUPT.
Figure 3-9 illustrates the timing for an interrupt.
A peripheral device requests an interrupt by
raising the microprocessor's INT line high. The
INS8080A acknowledges the asynchronous interrupt request at the completion of the instruction in progress, providing interrupts have not
been disabled either by an interrupt service not
followed by a new Enable Interrupts Instruction
of by a Disable Interrupts Instruction. During
the first clock period (SYNC interval) of the INTERRUPT machine cycle, the microprocessor
outputs a high INTA status bit (DO) to indicate
acknowledgement of the external request.
3.2.6.2 Data Output Operations
The output cycle consists of writing data into
either a specified memory location or to an out·
put peripheral device. Figure 3-8 shows the timing for a data-output operation. The outputting
of status information onto the D7-DO Bus and
address information onto the A15-AO Bus is as
described above for data-input operations. The
rising edge of >2 within state T2 clears status
information from the D7-DO Data Bus and loads
in the data that are destined for memory or for
peripherals .. 'Note that a high READY signal is
also re.quired during an output cycle. If a high
READY signal is not present, the microprocessor enters the TW state following the T2
state. In this case, data on the D7-DO lines remain stable during the wait state, and the processing cycle will not proceed until the READY
goes high. During the outputting of data from
t~e microprocessor (MEMORY WRITE, STACK
. WRITE, and OUTPUT machine cycles), the INS8080A generates a low WR output fo~n
chronization of external transfers. The WR is
initiated by the leading edge of the first >1
clock foltowing T2 and is terminated by the
leading edge of the >1 clock during the state
following T3. During the WAIT sequence, the
WR output is extended one or more clock
periods by any TW states intervening between
states T2 and T3.
The asynchronous interrupt request is reclocked by internal logic to establish a proper relationship with the >2 clock. As shown, an interrupt request that is made when the INTE line i.s
high (enabled), causes the internal interrupt
flip-flop to be set by the >2 clock pulse during
the last state of the instruction cycle in progress. This action ensures the completion of '
any instruction being executed before the processing of the interrupt. .The INTERRUPT
machine cycle that. follows an enabled interrupt
request is similar to a FETCH machine cycle,
except that the. Program Counter is not incremented during the acceptance of the interrupt
instruction and the contents of the Program
Counter and status information are pushed on·
to the external stack. In this way, the correct
pre-interrupt instruction address is maintained
in the external stack during the, interrupt
machine cycle.
"'
The interq.lpting device identifies its required
service routine by jamming an instruction of up
3·14
.pI
.2
A1S-AO
°7-0 0
SYNC
DBIN
READY
WAIT
"0"
WR
STATUS
INFORMATION
NOTE:
THE READY AND WAIT SIGNALS DO NOT CHANGE STATE
AND ARE IN THE LOGIC STATES DESIGNATED CONTINUALLY
NS'D607
Figure 3-8. Data Output Operation Timing
",
SYNC
+-----+-i--'-J
DBIN
WR
~--~~+-~--~~~--~~~---+---+---+--~
II
RETURN M,
IINTERNAL)
INTE
1
+--~~.;...,."\
, I
I I
I I'
III
+_..J
~'!'~'~~:~:!AO~
1_--...,:1 I. I
4-----~----~
~I~I~--~--~-+--~--~~--~~
INT
INT F/F
IINTERNAL)
\j-----+-+-"---+---+---+---..:....~-"-_:__..:...--..;..--_l
INFOR~~~T~:
_----.-!'....;.,---'!---1---+---~--.l----"---...:u.--~----l
INTERRUPT
L -_ _---L_ _ _...l- ACK~~~C:DGE ~_--L_--'-_--L--=:":"':::=---..l_ _~:":"::':=-:.......J
NS'0608
Figure 3-9. Interrupt Timing
3-15
address and data buses, thereby allowing the
device to effect direct data transfers to
memory.
to three bytes onto the D]"DO External Data Bus
during state T3, when the DBIN signal is high
(for example, a Call Conditional, a Jump Conditional, or a Restart Instruction). During this
time, memory and other peripherals are temporarily in the high-impedance state, thereby
allowing the interrupting device to control the
External Data Bus. The Restart Instruction, for
instance, includesa 3-bit variable field that is
used to call a routine in one of eight memory
locations with the following hexadecimal addresses: 0000, 0008, 0010, .0018, 0020, 0028,
0030, and 0038. Any of these addresses may be
used to store the first instruction of a service
routine for the requesting device.
Figure 3-10 shows the timing of a HOLD operation for a READ MEMORY or INPUT machine cycle, and figure 3-11 shows the timing of a HOLD
operation for a WRITE MEMORY or OUTPUT
machine cycle. Note that in both cases, the
asynchronous HOLD request is re-clocked by
internal logic to establish the proper relationship with the <1>2 clock. As shown, a HOLD request that is made when the READY line is
high, causes the internal hold flip-flop to be set
by the <1>2 clock pulse. With the flip-flop set, the
subsequent leading edge of the <1>1 clock pulse
causes the HLDA output to go high at either the
T3 state for a READ MEMORY or INPUT cycle or
at the clock period following the T3 state for a
WRITE MEMORY Of OUTPUT cycle. In either
case, the A15-AO Address Bus and 0]"00 External Data Bus are floated (high-impedance state)
after the leading edge of the next <1>2 clock
pulse.
3.2.8 Hold Operations
Direct Memory Access (DMA) is a method frequently used to effect data transfers between
peripherals and memory. Using this technique,
data transfers can be directly implemented
without involving the microprocessor. In the
I NS8080A, provisions are included for DMA
transfers. A peripheral requests a DMA transfer
by placing a high level on the HOLD line of the
INS8080A. This, in turn, may cause the microprocessor to suspend temporarily its operations and the address and data buses to go to
the high-impedance state (float). The I NS8080A
acknowledges the asynchronous HOLD request by placing a high on the HLDA line.
When its HOLD request is acknowledged, the
related peripheral device takes control of the
Once the address and data buses of the
INS8080A are floated; the microprocessor
usually suspends its operations. However, if
the HOLD request was acknowledged at the T3
state and if a particular machine cycle requires
the T4 and T5 states, the microprocessor continues these operations internally. Thus, the internal processing activities do not end until the
machine cycle is terminated.
Tl
¢1
¢2
I
II
I II
HOLD
REQUEST
HOLD
(INTERNALLY
RE·CLOCKED)
' -1-1-1- ..Ii
II
III I
II
READY
INTERNAL
HOLD F/F
HLDA
*T4 AND T 5
~!IIPE~R~A~TI~O~N~CA~N~B~E~"";
DONE INTERNALLY.
NS10609
Figure 3-10. Hold Operation Timing for MEMORY READ or INPUT Cycle
3-16
T1
it>2
A15"":Ao
+---+---+--'V+---+-....-+--~,-+ - - -- +-- (HI-Zl
-r..;.__..,....;._...._...l._ _ I _..J..FLOATING
_ ---..!..- -~'
WR
HOLD
REQUEST
HQLD
READY
INTERNAL
HOLD F/F
HLDA
+-_-.1
1
I
I
I
I·
I
~---~------~------~---~-~-~---~---~---~
+o----!-----!----..:......I
~---~---~---~---..:..-~-~
NS10610
Figure 3-11. Hold Operation Timing for MEMORY WRITE or OtJTPUT Cycle
When the peripheral device has completed the
DMA transfer, it places a low level on the HOLD
line of I NSBOBOA. This low level causes the
microprocessor to leave the HOLD state
through a sequenc~ similar to that by which it
entered. Fo"owing the leading edge of the next
4>1 clock pulse, the HLDAoutput returns to a
low level. Normal processing then resumes
with the machine cycle following the last cycle
that was executed.
INTE output line is high, causes the
INSBOBOA to exit the halt state and
enter state T1 On the leading edge of
the next 4>1 clock pulse (see figure
3-14).
3.2.10. Initialization
When pOwer is first appplied to the INSBOBOA,
an external high-level signal of at least three
clock periods in duration is placed on the
RESET line to clear the Program Counter (see
figure 3-15). Thus, the first instruction is always
fetcheq from memory location 000016 after the
power-up initialization cycle. The Status Flag
Register, the Stack Pointer, and other working
registers (Accumulator,S Register, C Register,
and so forth) are unaffected -by the active
RESET signal. Instead, these registers are in·
itialized by related instructions within the
program.
3.2.9 Microprocessor Halt
The Halt (HLT) Instruction is used to effect a
programmed halt condition. When the HLT Instruction is executed, the INSBOBOA enters the
halt state (T WH) after state T2 of the next
machine cycle as shown in figure 3-12. The
microprocessor can exit the halt state in only
the following three ways, which are shown in
the Halt Sequence Flowchart of figure 3-13.
1.
2.
3.
3.3
A high level on the microprocessor's
RESET line resets the INSBOBOA to
state T1, and clears' the Program
Counter as described in 3.2.10.
A high level on the HOLD line causes
the microprocessor to enter' the
HOLD state as described. in 3.2.B.
When the HOLD line is subsequently
driven low, the I NSBOBOA reenters the
halt state at. the leading edge of the
next 4>1 clock pulse (see figure 3-14).
A high level on the INT .line, while the
INS8224
DRIVER
CLOCK
GENERATOR, AND
The INSB224 is a single-chip crystal controlled
cloc'k generator and driver for the INSBOBOA.
Figure 3-16 is a functional block diagram of the
INSB224 chip. The INSB224 provides 4>1 and 4>2
MOS clocks, a power-on RESET Signal, and a
synchronized READY Signal for the I NSBOBOA.
In addition, the INSB224 provides a Status
Strobe (STSTS) for the INSB22B/lNSB23B
System Controller and Sus Driver, and a 4>2 TTL
3·17
¢2
r-~~~----~----~--~/~~~------~---
- --' ",- - - "-""-Jr--:-SYNC
OBIN
WAIT
STATUS
INFORMATION
FETCH
CYCLE
HALT
ACKNOWLEDGE
CYCLE
I
NS10611
Figure 3-12. Halt Timing
TO STATE
T,
TO STATE T,
Figure 3·13_ Halt Sequence Flowchart
3-18
¢1
¢2
A1S-AO
0 7 -00
SYNC
I
I
I
I
I
I
I
I
I-....:-FL.OATING
---I-T;~L~;T~~~(H~j-+-rii--t--¥,..:..--.....
I ,...._
; --...
.....~_..,.:: (HI-Z)
1
1
--Tn--r-lfnrTTr J
I I
I
DBIN
HOLD
I
HOLD F/F
(INTERNAL)
I
HLDA
iI
I
I
I
I
I
I
II
I
I
I
I
INTE
INT
INT F/F
(INTERNAL)
I
I
II I II
I II
II I
III
III
\
I
I I I
I
I
-,-RST
11:
1("
II
II
I ,
1;~IBll
INHIBIT
HOLD
I
I
STATUS
INFORMATION
INTERRUPT
ACKNOWLEDGE
~
__~____~____- L____~____L -____~__- J____-LWHILEHALT
CYCLE
NSI0613
Figure 3-14.
Relation Between HOLD and INT in the HALT State
¢1
¢2
A 1S -Ao
0 7 -0 0
1. ____ 1 ____..:...___
•
~FLOATINGI(HI-Z)
-1'1- - - - - -I' - -I""\_-~-N.!;"I!!O"~-!!::X""--"""--
,.__I..:.l_ _~-:-_ _ _-+I____ :;L ____
. . . -- II
I
I
~
- -1- - - -
~
RESET
INTERNAL
RESET
SYNC
DBIN
STATUS
INFORMATION
I
I
I
t
'-----'-I---..:...-
I
~~I---~~I---~~---~~I~
+----:-----:....---...;...---.f~----:....---...:..----:.--I
I
I
I
I
I
I
(1) THE RESET SIGNAL MUST BE ACTIVE FOR A MINIMUM OF THREE CLOCK
I
FETCH
CYCLE
CYCLES. WHEN RESET SIGNAL IS ACTIVE. ALL OF CONTROL OUTPUT
SIGNALS WILL BE RESET IMMEDIATELY OR SOME CLOCK PERIODS LATER.
(2) IN THE ABOVE TIMING DIAGRAM. nAND i MAY BE ANY INTEGER.
NSI0614
Figure 3-15. Initia.lization Timing
3-19
Clock, and an Oscillator (OSC) Signal to accom'
, modate user reqUirement;;.
may have to be connected in series with the
crystal to produce the exact desired frequency.
The stable, crystal-confrolled oscillator output
is routed to the OSC chip pinout via a buffer for
external, timing purposes, arid, to the clock
generator circuit.
The INS8224:
•
•
•
Has Crystal-Controlled Oscillator for
Stable Operation
Provides Status Strobe for INS8228
Provides Power-On Reset forlNS8080A
The clock generator circuit comprises a divideby-nine counter and the associated decode
gating logic. The circuit generates the 1/>1 and
1/>2 clocks (see figure 3-17) and internal timing
signals. All of the nonoverlapping waveforms
generated follow a simple 2-5-2.pattern. Two of
the clock generator outputs are routed to highlevel drivers, which convert the TTL>1 and >2
clocks to MOS level clocks. A- third output of
the clock generator is ,routed to the >2 (TTL)
chip pinout for external timing purposes.
An external, series-resonant crystal provides
frequency control for the oscillator circuit as
shown in figure 3-16. Normally, a fundamental
mode crystal is used to determine the basic
operating frequency of the oscillator. However,
an overtone mode crystal (which generally'has a '
lower gain) mayal~obe used. When an overtone mode crystal is used, th~ TANK input of
the chip is connected to a parallel'LCnetwork
(AC coupled to ground) to offset the lower gain
of the overtone mode crystal. Regardless of the
type of crystal used,. the crystal frequency is
nine times the desired microprocessor speed
(crystal frequency = 1/tCY x 9). When the
crystal frequency is above 10 megahertz,a
selected capacitor of from 3 to 10 picofarads
The STSTB Signal is generated by gating a highlevel SYNC input from the INS8080A with the
>1A internal timing signal from the clock
generator circuit. The STSTB Signal is used to
clock status information onto the status latch
of the INS822811NS8238 System Controller and
Bus Driver.
BUFFER
~------------------------~~12~~
>-------------~
11
>------~ 10
~--------""-'-----------.....,~.!.J
.'
..
..(nLi
~NC 5~----------------__--~~--~::::::j[:J~::r:~--------~7 ~
2'1-----1
RESiN
1------'1--"'"1 D
NOTES:
ii 1----:---'
1. ONLY USED FOR OVERTONE
CRYSTALS.
2. A 3-10 pf CAPACITOR MAY
BE NEEDED WHEN THE CRYSTAL
FREQUENCY IS ABOVE 10 MH~.
RDVIN
Vee
3
l------------------+-~
1-------------------t::<'4IjREADY
Oil---- +5V
VDD~tl2\!
GND~av
I
NS10749
Figure 3-16. INS8224 Functional Block Diagram
3-20
r-tCY~
~1 CLOCK~
~
r--\'--~f
r--\
1
''----------
I
2 UNITS
1
I
,
1
1
1
1
I
!I I I I I \! 1 1 '
cJ>2 CLOCK _____If1: 2 : 3: 4 :5' : 2 :
' - v - " '-..,.-'
5 UNITS 2 UNITS
1 UNIT
Figure 3-17.
,'-----I'
1
fosc
Relative Timing of INSB224 Clock Output Waveforms
A Schmitt Trigger circuit is used in conjunction
with a D-type flip-flop to provide an automatic
system reset and startup upon application of
power as follows. The RESIN input, which is
obtained from the junction of an external RC
network that is connected between Vce and
ground, is routed to the internal Schmitt Trigger
circuit. This circuit converts the slow transition
of the power supply rise into a sharp, clean
edge when its input reaches a predetermined
value.
When this occurs, the succeeding
D-type flip-flop is synchronously reset, thereby
providing the RESET output signal. For manual
system reset, a momentary contact switch that
provides a low (ground) when closed, is also
connected to the RESIN input.
structure of small systems that require only one
basic vector, and an Interrupt Acknowledge
Signal (INTA) for each byte of a multibyte CALL
Instructon.
Advanced 110 Write (I/O W) and
Memory Write (MEM W) Signals are provided
only by the INSB23B chip for large-system timing control. Figure 3-19 is a functional block
diagram of the INSB22B/INSB23B chip.
The bidirectional bus driver is a parallel B-bit,
TRI-STATE circuit that buffers the INSBOBOA
Dy-DO External Data Bus from memory and
input/output devices. The bus driver circuit also
assures that the input/output requirements of
the CPU data bus (3.3 volts minimum input and
1.9 milliamperes maximum drive output) are exceeded, thereby enhancing noise immunity. In
addition, the bus driver circuit has sufficient
output drive capability (up to 10 milliamperes)
for directly connecting a large number of
memory and input/output devices to the system
data bus. The chip gating array (figure 3-20)
controls the operation of the bidirectional bus
driver so that proper bus flow is maintained,
and so that the driver circuit is driven into
the high-impedance state during a DMA data
transfer.
The synchronized READY signal is generated
by a D-type flip-flop, which is clocked by the
>20 internal timing signal output of the clock
generator. The D-type flip-flop re-clocks an
asynchronous Ready Input (RYDIN) signal to
provide the synchronous READY Signal to the
INSBOBOA.
A typical INSB224-to-INSBOBOA interconnection
is shown in figure 3-1B.
3.4
I
The status latch uses the "low-level Status
Strobe (STSTB) from the INSB224 Clock
Generator and Driver to store the status word
that is outputted onto the CPU data bus by the
INSBOBOA at the start of each machine cycle.
The latched outputs of the status latch are, in
turn, routed to the chip gating array.
INS822811NS8238 SYSTEM CONTROLLER
AND BUS DRIVER
The INSB22BIINSB23B generates all the read
and write control signals required to directly interface the memory and input/output components of the NBOBO family.
The INSB22B/
INSB23B also provides drive and isolation for
the bidirectional data bus of the INSBOBOA
Microprocessor, a: user-selected single-level interrupt vector (RST7) for use in the interrupt
The gating array generates read and write control signals by gating the status latch outputs
with various control signals from the INSBOBOA
3-21
NST0751
Figure 3-1B. INSB224 to INSBOBOA Interconnection
~icroprocessor.
The read control signals (MEM
R, IJOR, and INTA) .are obtained by gating the
appropriate status latch bit(s) with a high-level
DBIN signal from the INSBOBOA. Similarly, the
write control signals (MEM Wand IJOW) are ob-'
tained by gating theapproPfiate status latch
6it(s) with a low level WR signal from the INSBOBOA. During a DMAdata transfer, the gating
array and bidirectional bus driver are driven to
the high-impedance state by high-level BUSEN
and HLDA inputs. When using a multibyte
CALL as an Interrupt Instruction, thelNSB22BJ
INSB23B generates an INTA pulse for. each of
the three bytes of the instruction, When an in~
terrupt is acknowledged by the INSBOBOA.
For descriptions of the devices required to expand the minimal CPU Group into .one with an
expanded capability refer to the sections listed
below:
• Expanded chip selects (see section 4.4)
• Interrupt expansion (see section 4.7)
• Aqdress expansion (see section 4.3)
For INSBOBOA instruction set, see chapter 11.
3.S_1 DM8131 6-Bit Unified Bus Comparator
The DMB131 compares two 6-bit binary words
and indicates equality by the output going low.
The application shown utilizes the DMB131 to
select a 2K block of memoryJperipheral space
with the INSB2LSOS selecting B blocks of 256
each, within the 2K block.
The INSB22BJINSB23B can be used to insert a
single-level interrupt vector (RST 7) onto the
CPU data bus with a high-level DBIN signal,
when an interrupt is acknowledged by the INSBOBOA. To use this feature of the chip, the INTA
outpu't (pin 23) must be connected to an external12-volt power supply via a 1-kilohm resistor.
A typical INS822BIINSB23B-to-INSBOBOA interconnection is shown in figure 3-20.
Features:
• Low Bus Current Input
• High Bus Ncilselmmunity
• TTL Output
3.S CPU CHIP SET
3.S_2 INS82LSOS One-of-Eight Binary .
Decoder
The I NSBOBOA and its two CPU Group support
devices,. the INSB224 and the I NSB22BII NSB23B,
constitute the minimum components to implemeri!the MICROBUS. The minimum CPU Group
is slJfficient for implementing a minimal system
with only a linear select addressing capability.
The INSB2LS05 decodes one of eight lines, based upon the conditions at the three binary
select inputs and the three enable inputs. It is
designed to be used in high-performance
memory-decoding or data-routing application,
requiring very short propagation delay times.
An illustration of a minimal CPU Group is
shown in figure 3-21. For expanded CPU Group
see figure 2-B, INSBOBO family CPU group to
MICROBUS Configuration .. Refer to appendix
A;B for System Timing Diagram.
Features:
• Three enable inputs simplify cascading
• Schottky clamped for high speed
3-22
----
CPU
DATA
BUS
~
--.~------.---
DO
DBO
0,
DB,
02
DB2
03
DB3
BIDIRECTIONAL
BUS DRIVER
0/1
DB4
05
DB5
Os
DBS
07
SYSTEM
DATA
BUS
DB7
CONTROL
Ie..:>
'"
e..:>,
.J
I
Si'ffi
DJ
::~
HLDA
2
BUsEN
~
v" [i!]
m
GND
I
STATUS
LATCH
j
·1
•: ""
ov
r
~
I
GATING
ARRAY
tr
.@] M'EMR
-I
12!] MEMW
I
:~
27
J-CONTROL
SYSTEM
IIOR
BUS
Ilow
.@]
I
INTA
NS70112
Figure 3-19.
INS822811NS8238 Functional Block Diagram
~
INS8080A
MICROPROCESSOR
10
00
15
13
9
01
17
18
8
02
12
11
7
03
10
9
3
04
6
5
4
Os
19
5
06
21
6
07
8
18
WR'
17
OBIN
4
23
iNTA
21
HLOA
2
24
MEMif
22
26
MeMW
3
080
DB;
OB2
08 3
OB4
18
INS8228/8238
SYSTEM
CONTROLLER
&
8USORIVER'
SYSTEM
DATA
BUS'
085
20
OB8
7
087
"}
iiUsEN
Sffii
1
25
FROM PIN 7
OF OP8224
SYSTEM
CONTROL
BUS
1/0 R
27
iT--Gl
Ax+6-AlI+8
A,B,C
b..
"
Internal BloCk Diagram
Figure 3-22.
Typical MICROBUS Interface
DM8131 6-bit Unified Bus Comparator
vcc~
rc
AtS-AD
YO
GND~
INS82lS05
Ax-AJt.+2
Yl
A,B,C
Gl
Y2
C57 -CSo
'o-vo
ENABLE/ G2A
INPUTS
G28
Y3
~t-
'1'>---
M
I
Gl
C
R
0
B
GZ'
G28
Y4
U
INS8ZLS05
A (1)
S
Y5
A,B,C
SELECT
INPUTS
B
CS15
Y6
(2)
fsa
Y7-YO
G1
C
Y7
(3)
lriternal Block Diagram
Figure 3-23.
F
GZA
628
Typical MICROBUS Interface
INS82LS05 One-of-Eight Binary Decoder
3-26
b-
07-05
04-00
DATA
BUS
BUFFER
(19)
.. CHO
~.:
~
""'-ORQO
16
BIT
MEMR
MEMR
MEMW
MEMW
IIOR
1.1
1
~I
READ}
WRITE
lOGIC
~I
A7-A4
111)
•
~
READY~
16
BIT
CONTROL
lOGIC
AND
r"ODE
II
r
.'",
SET
~DRn2
I CH2
"I
" "'" -t
iiEMR
STB
•
OROI
OACK2
cs
OR02
READY
07·00
AEN
OACKl
OROl
ADST8
DS2
STB
A15·A8
A7-AD
008-001
~DRa3
,
I'
,'I
BI1
115) _ _
....J!L...
•
INS8212
DSI
STB-
13)
MEMW
'EN
CLK
ADDRESS BUS
REG
HlDA
Cs
iiACi<1
RESET
CLK
READY
DROD
I/ow
RESET
A7·AO
DACKO
IIOR
IIOW
CPU
GROUP
I
1----
A3·AD-'
Os
I .f:l~DRQI
I
INS8257
A7·AO
I')
.....!!!!- Vee
1=
~GND
BUS
136)
Te-
15)
MARK . . -
•
Typical MICROBUS Interface
Internal Block Diagram
Figure 3-24.
INS8257 Programmable DMA
Controller
M
I
C
R
0
B
U
S
INTERNAL
BUS
(4·11)
DATA 8US
07·00
{1a.25}
INTERRUPT
REQUEST
REGISTER
DATA
BUS
BUFFER
IRO·IR7
'"'C
PRIORITY
RESOLVER!
REGISTER
I.
INS8Z59
01-00
(17)
INT
{=:
TO
SERVICE
REGISTER
CPU
GROUp
'1'
,..-_:%.._-,
CASCADE
CO~A~~~~~OR
1CWl-ICW2/
INTERRUPT
ACKNOWLEDGE
COUNTER
(121
INTR
Os
AO
INTA
>--SP
07·0n
•
i[jj
WR
IR1·IRO
...
cs
AO
M
I
c
R
AD
a
WR
B
U
S
INTR7·INTRO
....... CASO
(1J)
X
~::;
b..
rI~• • •~I
ICWJ
Internal Block Diagram
Figure 3-25.
~
Single Device Configuration
INS8259 Programmable Interrupt Controller
3-28
r-~
..-...
,.....
MEMORY
Chapter 4
. Designing Series
8000 Microprocessor
Family Systems
...........
INPUT/OUTPUT
.....-.!
M
SERIES BODO
MICROPROCESSOR
"-
I
C
R
L)-
0
B
U
S
TM·
....
PERIPHERAL
CONTROL·
~
COMMUNICAnONS
I""-,
.
~
• Trademark, National Semiconducto( Corporation
c
_.
Designing Series 8000
Microprocessor Family Systems
CD
(J)
CO
::l
::l
CO
en
CD
~.
4.1 INTRODUCTION
CD
(J)
This chapter provides detailed information to
aid the system designer in the design of
INSSOSOA microcomputer systems. Included in
the chapter are the following: CPU group
design, details on interfacing to memory and
peripheral devices, techniques for expanding
interrupts, and a method of implementing a
simple control panel.
outputs. These TTL clock outputs are in turn
capacitively coupled to the clock driver circuit.
The Clock Driver is a two-phase interface circuit
that converts the TTL ¢1 and <1>2 clocks to MOS
level <1>1 and <1>2 clocks. The MOS clocks have a
voltage swing of from 0.6 to 11 volts, and rise
and fall times typically less than 10
nanoseconds into a 20-picofarad capacitive
load. To obtain the required output voltage
swing, the clock driver is biased from the VBB
supply (- 5V) and the VDD supply (+ 12V) via a
simple resistive divider.
A low-resistance
series network is included between each driver
output and the I NSS080A to eliminate any pulse
overshoot.
4.2 CPU GROUP DESIGN
The preferred design approach for the CPU
group is to use the INSSOSOA Microprocessor
with the INSS224 Clock Generator and Driver
and the INSS22S/lNS8238 System Controller
and Bus Driver as shown in figure 4·1. The use
of this approach yields significant benefits in
system timing and decreased component
count. An alternative design approach, which
uses standard TTL components and National
Semiconductor general·purpose peripheral
devices to implement the basic functions of circuits of the two supporting chips is described
below. This design approach achieves operational characteristics that closely approximate
those of the INSS224 and INSS22S/lNSS23S
chips.
4.2.1
The 20-megahertz oscillator also prOVides its
TTL output to the ClK input of a D-type flip-flop
of the Auxiliary Functions circuits. This flipflop, in turn, generates an advanced timing
signal (1A) that is used to clock two D-type
flip-flops associated with the e)1 A timing signal is also gated
with the SYNC signal from the INSSOSOA to
generate a low-level status strobe (STSTB) output. This output can be used as the'latching
signal for the status word that is outputted onto
the 07"00 External Data Bus by the I NSSOSOA at
the first state of each machine cycle.
Clock Generator and Driver DeSign
Figure 4-2 shows the design of the Clock
Generator and Driver using discrete components_
The circuits generate two nonoverlapping timing references (<1>1 and <1>2
clocks) for the internal storage elements and
logic circuits of the INSSOSOA Microprocessor.
(Refer to the INSSOSOA Data Sheet for the levels
and timing relationships of the two reference
clocks.) The circuits also provide auxiliary
functions such as the synchronization of external requests and the generation of the'status
word strobe.
4.2.2
System
Design
Controller and
Bus
Driver
Figure 4-3 shows the design of the System
Controller and Bus Driver using discrete components. The circuits generate the read and
write control signals for memory and input/output devices, and provide buffering of the 07"00
External Data Bus.
The System Controller comprises an eight-bit
latch and associated gating circuits (four NAN 0
gates and an inverter). The latch uses the
status strobe (STSTB), which occurs at the start
of each machine cycle, as the latching signal to
store the status1 and <1>2 clock
4-1
CO
0
0
0
s
Cr
0"'"
"C
a0
(')
CD
(J)
(J)
0
"'"
."
s:u
3
-<
en
-
'<
(J)
CD
3
(J)
..
2
GNO
AO
20
A,
'5V
"..
-5V
A2
..
2.
+12V
A3
INS8080A
MICROPROCESSOR
A.
A'0
A"
1.'
INT
A'2
A'3
16
INTE NABLE
INTE
A,.
A'15
~
WAIT
I
14
TANK
ROYIN
-!
+12V
+5V
~
~
----
-:
HlOA
22
"
',1
00
.2
0,
15
10
\
°2
INS8224
03
CLOCK
GENERATOR
AND
DRIVER
•
1
5
8
GNO
A.
A5
32
A6
33
23
READY
D.
RESET
05
12
"
D.
SYNC
,
0,
ADDRESS BUS
A,
34
A.
35
A.
1
A'0
'0
A"
3,
A'2
3.
A 3
'
3'
A"
36
,.
A'5
17
21
15
osc ~
---!..3
-
'WR
OBIN
~Ir~r
AJ
A5
A6
A2
2.
30
Ag
SYSTEM IN TREQ
2'
31
A,
HOLD
AO
A,
A.
13
SYSTEM OM AREO
25
2.
>1
.1
3
10
15
•
•
,
17
16
12
"
3
,
5
•
13
OBO
OB ,
OB2
•
10
6
OB3
5
DB.
"21
•
INS8228/8238
SYSTEM
CONTROLLER
AND
Blls DRIVER
., 18
..
08.
20
,
DB6
DB,
23'
2.
'5V _ _
2.
GNO~
2~
,.
STATUS STROBE
l
r"'·
INTA}
MEMR
MEM W
CONTROL BUS
25
I/OR
22
BUSEN
2'
"OW
NS10616
Figure 4-1_
Preferred Method of CPU Group Implementation
4-2
WAVEFORMS
~tTTL)
~
---Il~
_
!...-
U
50ns
!fJ2 (TTLI
--l t-- 50n$
50ns --I ~
~)'A(TTLI~
--~-----,~
SYNC
SYNC
o
----------~~r-----
74874
r--I
CLOCK GENERATOR - -
t;il
20MHz
~
__ . ______ _~STSTB
t------------...
",lA (TTL!
.-----l-----ICLK Q
\
WAIT REO
OSCILLATOR
o
O~--_
READY
74S74
elK
330
OMA REO
o
a t----
HOLD
74574
74S04
elK
CLOCK DRIVER
"2V
47~1
OA
OA
t------\l--...
DB
74163
08
DC
,2
CLOCK
GND
NSI0616
Figure 4-2_ System Clock Generator and Driver Using Discrete Components
These control signals are directly' interfaced to
the memory and input/output devices,
by forcing the outputs of each 4-bit bidirectional
IC of the bus driver to the high-impedance state.
The Bus Driver comprises two 4-bit, parallel
bidirectional IC components that buffer the
INS8080A DrDo External Data Bus from
The
memory and input/output devices.
INS8080A data bus has an input requirement of
3.3 volts(minimum)and output drive capacity of
1.9 milliamperes (maximum). The bus driver ensures that these requirements are not only met
but exceeded for enhanced noise immunity. In
small systems with minimum memory and
input/output requirements, buffering of the
07-00 External Da~a Bus may not be required.
4.3
ADDRESSING CONSIDERATIONS AND
TECHNIQUES
The INS8080A has a 16-bit address bus that is
capable of addressing up to 65K bytes of
memory and up to 256 input and 256 output
devices.
In small systems with minimum
memory and input/output requirements, buffering of the A15-AO Address Bus may not be required. However, as memory and input/output
device requirements increase, buffering is
requireo for the bus. This address buffering
function can be implemented by using two National Semiconductor INS8202 TRI-STATE Octal Buffers as shown in figure 4-4. Note that the
system Bus Enable. (BOSEN) signal is connected to the buffers so that they are forced into their high-impedance state during a DMA
data transfer (BUS EN :::: logic 1) or any other
time that bus access is desired, thereby allowing other devices to gain access of the address
As shown in figure 4-3, the Direction Control
(OlEN) and Chip Select (CS) ipputs of the Bus
Driver are connected to the DBIN output of the
INS8080A and the system Bus Enable (BUSEN),
respectively. The DBIN signal ensures that the
proper data flow is maintained on the data bus.
The BUSEN is an asynchronous signal that
allows other devices to gain access of the data
busduringaDMAdatatransfer(BUSEN:::: logic1)
4-3
~BUSDAIVER
~
~
10
o
INS82161
INsa226
~
a
D2
12
~
7
D3
DBO
ri:-
9
0,
"
3
.
10
13
OlEN
1S
t
•
cs
•
DBl
DB2
DB3
~1
BUSEN
SYSTEM
DATA BUS
(SEE NOTE)
D.
D5
r+
3
,
5
DO
07
0
INsa2l61
INSB226
1+
0
OlEN
"t
MICROPROCESSOR
10
13
12
INS8080A
-
7
191NP
9
21 MEMR
T
-
1
~
la
SYSTEM
CONTROL
aus
150UT
20
.l.Q..!:!.hI.L
22
~
~TST8~
"
1
INS8212
10
OBIN
BUSEN
~
.
DB5
DBO
DB7
.1
"4INTA
5
DB'
cs
~ SYSTEMCDNTRO"ER
3
--
3
r-+r-T
.~
V"
~
Y>
t:rFNOTE:
iVA la
THE INS8216 J~S A NON-INVERTING
DEVICEANDT HE lNS8226IS AN
INVERTING DE VICE
NS1D617
Figure 4-3. System Controller and Bus Driver Using Discrete Components
of the addressing techniques. In linear select, a
singular address bus bit is assigned as the exclusive enable for a specified input/output
device. Using this method limits the number of
input/output devices that can be addressed but
eliminates the need for extra decoders. In
Small system design, this is an important consideration.
bus. As mentioned above, up to 65K bytes of
memory and up to 256 input and 256 output
devices can be directly addressed via the
A15-AO Address Bus of the I NS8080A. The
INS8080A microcomputer system can be configured so that memory and input/output
devices are either treated separately (isolated
input/output) or as a single memory array
(memory mapped input/output) as described
below. The mapping for the isolated input/output and memory mapped input/output addressing techniques is shown in figure 4-ti. With
both of these addressing techniques, the most
common method of addressing memory or input/output devices is to decode some of the address bus bits as "chip selects" (using a device
such as the National Semiconductor
INS82LS05 to enable the addressed memory or
the input/output device). The linear select
method (refer to 4.5.1) is another way of· addressing the input/output devices using either
When the INS8080A system is configured for
isolated input/output addressing, the memory
address space is separated from the input/output devices address space by using system
control signals for the input/output architecture
as shown in figure 4-6. Also, with isolated input/output addressing, the input/output devices
communicate only with the Accumulator using
the IN and OUT Instructions. Thus, since the
memory address space is not affected by input/output device addressing, the full address
space of 65Kbytes.is available for memory.
4-4
~25
2
3
26
4
5
27
6
7
29
8
30
12
11
31
14
13
A5
32
16
15
A6
33
18
Al
A2
A3
A4
A5
A6
A7
A8
Ala
All
A12
A13
A14
A15
Al
A2
9
INSS202
A3
A4
17
A7
G2
CIT
INSB080A
MICROPROCESSOR
A9
AO
~9
1+
SYSTEM
f- ADDRESS
BUS
34
2
3
35
4
5
1
6
7
40
8
37
12
11
38
14
13
39
16
15
36
18
AS
A9
Al0
9
INSS202
All
A12
A13
A14
17
1
1+
aUSEN
A15
G2
Gi"
9
NS70678
Figure 4-4. Address Buffer Design Using INS8202 Devices
0
J
t
65K
MEMORY
ADDRESS SPACE
r
JJ
0
256
INPUT/OUTPUT
DEVICES
ADDRESS SPACE
A. ISOLATED INPUT/OUTPUT
0
32K
65K
INPUT/OUTPUT
DEVICES
ADDRESS SPACE
MEMORY
ADDRESS SPACE
B. MEMORY MAPPED INPUT/OUTPUT
NS10619
Figure 4-5.
Mapping for Isolated Input/Output and Memory Mapped Input/Output Techniques
4-5
INS8228/INS8238
SYSTEM CONTROLLER
MEM R
--MEMW
I/O R
I/OW
24
.. }
26
TO
MEMORY
ARRAY
25
}
27
TO
INPUT/OUTPUT
DEVICES
NSI0620
Figure 4-6. System Control Signals for Isolated Input/Output Addressing
family interfaces with standard semiconductor
memory components (and input/output
devices) via the MICROBUS. Atypical interface
to a memory array having 6K bytes of ROM
storage and 512 bytes of RAM storage is shown
in figure 4-8. This typical memory interface is
suitable for almost any size of memory
array.However, in larger systems, buffers may
be required for driving the three buses and
decoders may be required for generating the
chip select signals for the memory array (and input/output devices).
.
When the INS8080A system is configured for
memory mapped input/output addressing, an
area of the memory array is assigned to the input/output devices by using system control
signals for the input/output architecture as
shown in figure 4-7. In this configuration, new
input/output control signals (110 R (MM) and 170
W (MM)) are generated by gating the fiifEMR and
MEMW signals with most significant address
bit A15' (Since these new input/output signals
connect in exactly the same manner as the
corresponding signals of the isolated input/output configuration, the system bus characteristics are unaltered). Address bit A15 is used
because it allows up to 32K bytes of memory
addressing, and because it is easier to control
with software. However, any other address bit
may be used for this gating function. When bit
A15 is low, the memory address space is active
and when bit A15 is high, the input/output
devices address space is active.
As shown in figure 4-8, the interfacing to the
three National Semiconductor INS8316 ROMs
is quite straightforward. The DO-D70utput lines
of the ROMs are connected to the bidirectional
Data Bus; the AO·A1Q address inputs are connected to corresponding bits of the Address
Bus; the CS2 and csa chip select inputs are
connected to the A11 and A12 bits (most significant) of the Address Bus; and the CS1 chip
select input of the ROMs is connected to the inverted MEM R signal of the Control Bus. During
a FETCH or MEMORY READ machine cycle, the
CPU group may output an address in the ROM
address space of the memory array. When this
occurs, the data stored at the addressed ROM
location are then gated onto the External Data
Bus with the MEM R signal. In this way, data
are read from the ROMs in the INS8080A
microprocessor system.
With 'memory mapped input/output addressing,
all of the instructions that can be used to
manipulate memory locations (for example,
MOV M, r; LDA; STA; LHLD; et cetera) can also
be used for the input/output devices. These
devices are still considered addressed
"PORTS" but instead of the Accumulator being
the only data transfer medium for the
peripherals, any of the internal registers of the
INS8080A can also be used for this purpose.
Thus, memory mapped input/output addressing
is suited for small systems that require high
throughput and have less than 32K bytes of
memory.
The interfacing to the four National Semiconductor INS8111A-4 static RAMs is also straightforward. The 1101-1104 common input/output
lines of the RAMs are connected to corresponding bits of the bidirectional Data Bus; the AO-A;
address bits are connected to corresponding
bits of the Address Bus; and the R/W and 00 in-
4.4 INTERFACING TO MEMORY
The CPU group of the INS8080A microprocessor
4-6
INS 8228/INS8238
SYSTEM CONTROLLER
}
~--------~~--------------------------------~
}
NOT
USED
I/OR(MM)
TO
MEMORY
ARRAY
} ~~PUT/
OUTPUT
10-1!_O_W-,-(M_M-,-l-i~
DEV ICES
NSI0621
Figure 4-7. System Control Signals for Memory Mapped Input/Output Addressing
r-
"
INS8111A·4
MmR
00
MEMW
RIW
Al3
eEl
CEZ
Al.
01
04
A7
AD
-#2
1104 1101
A1
AD
,
1m:
#2
1900
RAM
"
MEMR
1800
M
MEMW
17FF
I
Al3
#3
1000
ROM
RAM
#1
18FF
#2
0800
C
R
0
B
"
S
00
#2
r-
R/W
CE1
.14
ill
03 DO
A7
AD
'"
A7
07FF
"
INS8111A·4
'01
AD
0000
MEMORY MAPPING
MEMR
A11
C5,2
A12
01
"
INS8316A
C51
-"
00
07
00
ROM
A10 . AD
AlO
Figure 4-8.
AD
I
Typical Memory Interface
4·7
~
CS3
puts of the RAMs are connected to the MEM W
and MEM R(orDBIN)signals, respectively,of1the
Control Bus. During a FETCH, MEMORY READ,
or STACK READ machine cycle, the CPU group
reads data from the RAMs in exactly the same
manner as described above for the ROMs. Our·
ing a MEMORY WRITE or STACK WRITE
machine cycle, the CPU group outputs an ad·
dress in the RAM address space of the memory
array. When this occurs, the data to be written
into memory are then strobed into the address·
ed RAM location with a low·level MEM W
signal. In these ways, data are read from and
written into RAMs in the INS8080A micro·
processor system.
describe the unique characteristics of dynamic
RAMs which must be considered in a memory
system design.
Dynamic RAMs versus Static RAMs
The basic difference between dynami,c and
static RAMs IS the way they store data. The
static RAM uses a flip·flop to store a bit, while
the dynamic RAM uses a capacitor to store a
bit. (See figure 4·9.)
WORD LINE
Voo
The memory array of figure 4·8 includes ROMs
(INS8316A) and RAMs (INS8111A·4) that have an
access time of 450 nanoseconds (maximum).
When the INS8080A microprocessor is oper·
ated from a clock generator with atCY of 500
nanoseconds, the required memory access
time is from 450 to 550 nanoseconds. Therefore,
when slower memory components are used in
the system, the INS8080A Microprocessor must
contain a synchronization provision to allow the
memory components to request the wait state
(TW)' (The actual number of TW states to be in·
serted is determined by external logic that is
user designed.) This provision can be im·
plemented for any slow memory (RAM or ROM)
by a simple logic control'of the READY input of
the INS8080A as follows. When the addressed
slower memory receives a MEM R or MEM W
signal, it places a low·level on the READY line
'of the microprocessor, causing the INS8080A
to enter the WAIT sequence (refer to 3.2.2.2).
After the slower memory has had time to res·
pond, it places a high·level on the READY line,
thereby allowing completion of the instruction
cycle.
Static RAM Cell
WORD LINE
.
"'~
~,-""
DATA
-::-
Dynamic RAM Cell
Figure 4·9,
Cell Comparison
It is their respective cell designs that give each
RAM its advantages over the other. Let's com·
pare the RAMs for ease of use, power dissipa·.
tion, die size, and price.
Ease of Use: The static RAM is easier to use
because no refresh logiC is required. In addi·
tion, static RAM control signals tend to be
easier to generate because cycling is usually
unnecessary.
4.5 DYNAMIC MEMORY
4.5.1 Introduction
Many new memory system designs are using
dynamic RAMs, particularly in large memory
systems due to the availability of 16K RAM
chips.
Power Dissipation: . The dynamic RAM draws
less power. The static RAM draws power con·
tinuously to sustain its flip·flops, while the
dynamic RAM draws minimal power (1 to 2mA)
between cycles. With continuous cycling, the
dynamic RAM draws about as much power as
the static. However, in a large memory system,
dynamic RAMs save total system power since
only one bank of RAMs is ever accessed during
a memory .cycle. All other banks draw minimal
current except during refresh cyc'les. The duty
cycle for refresh is approximately 1V2 to 3%.
The key to success in a dynamic RAM system,
or any other system for that matter, is margin. A
system designed to maximize power supply
and timing margins will be reliable and easy to
manufacture.
'
In this section we shall discuss RAM. chip
characteristics, power supply and control
signal distribution on PC boards, and control
logic implementation suggestions.
Die Size: Dynamic RAMs tend to be smaller.
Due to the difference in cell designs, the die
size of the dynamic RAM is often at least 20%
smaller than that of a comparable static RAM
from the same manufacturer.
4.5.2 Ram Chip Characteristics
For reference we shall compare dynamic and
static RAMs at the chip level. Then we shall
4·8
Price: Because of smaller die sizes and much
larger production runs, dynamic RAMs should
always remain considerably cheaper than comparable static RAMs. In addition, dynamic
RAMs save money in larger systems. Less chip
power means smaller and cheaper power supplies. Smaller supplies mean a further saving in
reduced cooling requirements. In general, the
larger the memory system, the greater the savings by using dynamics.
4.5.3
Memory Subsystem Design
Considerations
Some memory board designs are easy to
manufacture, while others, functionally iden·
tical, have low manufacturing yields seemingly
due to the many "bad" chips. The difference
between them is usually the amount of margin
designed into each system. Power supply and
timing margins are both critical, and as the
margins go to zero or negative, the amount of
"soft" errors goes.up. (A chip has a "hard" error if a location consistently canno(be written
and read back properly. It has a "soft" error if it
only occasionally fails.)
,
Dynamic RAMs
Refresh: Since charge leaks off the storage
capacitors, it must be replenished periodically
in order for a dynamic RAM chip to retain its
data. The charge in anyone cell is replenished,
or refreshed, every time that cell is accessed for
a read or a write. At the same time, all the other
cells in the same row are also refreshed. For
that reason the entire RAM chip can be refreshed by dOing only 64 cycles for 4K RAM, (a 16K
RAM needs 128 cycles) in 2ms while sequencing through all the row addresses. The bit pattern presented to the column addresses does
not matter. However, the setup and hold times
must still be met. Unstable column addresses
during refresh will cause data loss.
On careful analysis, "soft" errors usually occur
during a memory cycle in which some system
parameter has gone out of spec. Since the
RAM chips themselves have variations in their
margins, replacing the offending RAM with one
that. has a greater margin in the out·of-spec
parameter seems to cure the problem. This
results in a large pile of "bad" RAMs. However,
the real solution to this type of problem is in a
careful system design and board layout in the
beginning.
Power Distribution
The hardware required for refresh amounts to a
6 or 7-bit counter for the refresh addresses,
some way to multiplex the counter onto the
RAM row address lines, a timer to signal when a
refresh should be done, and the miscellaneous
gating needed to couple into the usual read/write
logic.
By far the single most important aspect of a
successful RAM system is good power distribu·
tion consistingdf carefully designed decoupl·
ing and power gridding. The importance of
good power distribution cannot be overemphasized.
Figure 4·10 shows CE, IDO current waveform for
a typical dynamic RAM chip during a memory
cycle.
In some systems no extra refresh logic is needed: For example, in CRT systems normal operation sequences through all the row addresses
in less than a 2ms refresh period. This will be
true only if the row address bits on the RAM
chip are driven from ,the least significant address bits of the system. As a rule, this is good
practice in all systems. By placing the most
active system address bits on the RAM row ad·
dresses, normal system operation will automatically refresh the bulk of the RAM.
1~··2~0",~1
CHIP
ENABLE
Cycling: One of the key functional differences
between static and dynamic RAMs is the fact
that dynamic RAMs must run through a cycle in
order to read or write. Aborting the cycle by
removing the chip enable too early or by trying
to start a second cycle too soon after the first
will probably cause data loss. Minimum chip
enable on and off times must be observed.
100
~
\'--,-
:~.'f\-Jt
0----1
!..
_ _ _ _ 2_4mA
Summary
Static RAMs are easier to use. Dynamic RAMs
are cheaper, use less power, must be refreshed,
and must be cycled.
Figure 4·10.
4-9
'100 Current Waveform
First, place the actljal driver chip nearthe RAM
array it is driving, making the chip enable run
short and direct.
Second, put a damping
resistor near the driver. Do this for ,either TTL
level or 12 voltchip enables. Select the value of
this resi,stor to, give the best clock waveform at
the RAM chips. Its value will probably be between 10 and 5Hl Figure 4-11 shows the commonly used arrangements.
At the beginning and end ,of chip enable, each
RAM chip draws 50 to 100mA current spikes
with rise times of 20ns. In additon, each RAM
package draws a 20 to 40mA DC current lasting
for the duration of chip enable. The,power
distribution system must supply these cwrents
while the voltages at the RAMs remi;lin constant. If there are a number ,of rows of RAMs, all
power supply traces to all RAMs should be run
both vertically and horizontally throughou~ the
array. Providing multiple paths through the array redljces the effectjve ind.uctance of the
power distribution system.
Power Distribution Rules:
,1. It is the single most important aspect of a
, good RAM board layout'.
,',
:'
'2. Use plenty of decoupling. The decoupling
caps not only reduce voltage spikes, but
also provide mos,t of the RAM power d,l,Jring the cycling. Layout the board for a
0.1iF capacitor per power supply per RAM
chip (up to three capacitors per chip). As
production history accumulates,it may be
pOl!lsibleto omit half the
capacitors.
However, layout the board for one per supply per chip. Use ,50 to 200jn
• Single bit I/O operations with single
instruction
• Reduces system package count
• Independent operation of RAM and I/O
• MICROBUS™Compatible (see figure 5-7
for MICROBUS connection)
5.4 DYNAMIC MEMORY
Many new memory system designs are using
dynamic RAMs, particulary in large memory
systems, or systems using dedicated memory
such as CRT displays.
5.6 OTHER MEMORY COMPONENTS
Refresh requirements make dynamic RAMs
slightly harder to use than static RAMs. The
designer is paid back for his efforts however, by
reduced overall system cost using dynamic
RAMs in three ways:
•
•
•
This section describes other memory components. (Refer to appendix D for the data
sheets.)
5.6.1
Dynamic RAMs tend to be cheaper than
static RAMs of the same size.
Dynamic RAMs use less power, especially in a large array.
Power supplies are cheaper, because of
the reduced power requirements and
therefore cooling requirements are
reduced, allowing a further savjng.
INS8101A-4 IK (256 x 4) Static RAM With
Separate 1/0
General Description
The National INS8101A-4 is a 256 word by 4-bit
static random acess memory element
fabricated using N-channel .enhancement
mode Silicon Gate technology. Static storage
cells eliminate the need for refresh and the additional peripheral circuitry associated with
refresh. The data is read out nondestructively
and has the same polarity as the input data.
A sample of dynamic memory devices available
is referenced in section 5.6.6 and 5.6.7. (See
section 4.5 for discussion covering the design
of memory systems).
The INS8101A-4 is directly TTL compatible in
all respects: inputs, outputs, and a single + 5V
supply. Two chip-enables allow easy selection
of an individual package when outputs are ORtied. An output disable Is provided so that data
inputs and outputs can be tied for common I/O
systems. The features· of this memory device
Can be combined to make a low cost, high performance, and easy to manufacture memory
system.
5.5 INS8154 128-BY-8-BIT RAM 1/0
The INS8154 provides two 8-bit peripheral inter·
face inputloutput ports and 1024 bits of RAM,
organized as 128 x 8 bits of read/write memory
for data storage.
The I/O portion consists of two peripheral ports
of eight bits each. Each port may be read or
written in a parallel (8-bit byte) mode.
National's silicon gate technology also provides protection against contamination, and
permits the use of low cost Epoxy B packaging.
In addition to basic 1/0, one of the ports, port A,
may be programmed to operate in several types
of strobed mode with handshake. Strobed
mode together with optional interrupt operation
permit both high speed parallel data transfers
and interface to a wide variety of peripherals
with no external logic.
Features
•
•
•
•
Each bit of each port may be defined as an input
or an output and each bit may be set, cleared, or
read with a single instruction.
5-5
Organization 256 Words by 4 Bits
Access time - 0.5 101.0"s Max.
Single + 5V Supply Voltage
Directly TTL Compatible - All inputs and
Outputs
~
NRST~
ct.ili~
a..
CS1
M/iO)~
(38)
NWOS~
NRD S........
READ
WRITE·
CONTROL
LOGIC
...
~
PORT
. A
.....
OUTPUT
DEFINITION
REGISTER
.A
t
r
MODE
DEFINITION
REGISTER &
HANDSHAKE
LOGIC
,
"
.............
..,..
DATA.
BUS
BUFFER
BIT
OPERATIONS
AD6 -
(32-2~)
ADOii
.....
., .....
.....
"
.....
...
....
..,.
OUTPUT
DEFINITION
REGISTER
B
....,. .... ....,.
...
PORT
B
~INTFi
I+--t
+5V
t-
_ _. . ._ _ _ _ _ _ _ _ _ _• •
NOTE: APPLICABLE PINOUT NUMBERS
ARE INCLUDED WITHIN
PARENTHESES.
Figure 5-6. INS8154 Block Diagram
...... A6-AO
01- 001
ADDRESS
BUS
DATA
BUS
CPU
GROUP
.
CONTROL
BUS
M
Ia4
_'I'r-
I
C
R CS
B MEMR
U
S MEMW
RESET
INRI
0
"
~J9, 1- 7)
PB7-PB o
128 X 8 RAM
"
t
(16-f9, 21-24)
PA7-P AO.
. r"'""'"
i
(8-15)
DB7-DBO "If
I+--t
-
Ab6-AOO
DBI-DBO
MJjij
PORTA BUS
CSI
CSO
INSBI54
. PORT B BUS
NRDS
NWDS
NRST
INTR
NOTE
The ,NTR signal becomes active only in the
strobed mode wben a data transaction has
occurred.
Figure 5-7. INS8154 MICROBUS Connection
5-6
II
4
(40)
(20)
VCC
GND
•
The INS8111A-4 is directly TTL in all respects:
inputs, outputs, and a single + 5V supply. The
two Chip-enables allow easy selection of an individual package when out-puts are OR-tied.
The features of this memory device can be combined to make a low cost, high performance,
and easy to manufacture memory system.
Static MOS - No Clocks or Refreshing
Required
Simple Memory Expansion - Chip Enable
Input
Low Cost Packaging - 22 Pin Epoxy B
Dual-In-Line Configuration
Low Power - Typically 150 mW
Tri-State® Output - OR-Tie Capability
Output Disable Provided for Ease of Use
in Common Data Bus Systems
•
•
•
•
•
5.6.2
National's silicon gate technology provides excellent. protection against contamination and
permits the use of low cost Epoxy B packaging.
Features
INSS111A-4 1K (256 x 4) RAM With Com·
man 1/0
•
•
•
•
General Description
The NationallNS8111A-4 is a 256 by 4 static random access memory element fabricated using
N-channel enhancement mode Silicon Gate
technology. Static storage cells eliminate the
need for refresh and the peripheral circuitry
associated with refresh. The data is read out
nondestructively and has the same polarity as
the input data. Common Data Input/Output
pins are provide,d.
•
•
•
•
•
•
Organization 256 Words by 4 Bits
Common Data Input and Output
Single + 5V Supply Voltage
Directly TTL Compatible - All Inputs and
Outputs
Static MOS - No Clocks or Refreshing
Required
Access Time - 0.5 to 1.0p.s Max.
Simple Memory Expansion - Chip Enable
Input
Low Cost Packaging - 18 Pin Epoxy B
Dual-In-Line Configuration
Low Power - Typically 150 mW
Tri-State® Output - OR·Tie Capability
Block and Connection Diagrams (INS8101A-4)
-E..ovcc
AO
22
A3
+-.!o GNO
21
A2
Vee
A4
A'
20
AI
CELL ARRAY
ROW
SELECT
A2
RIW
32 ROWS
32 COLUMNS'
10
AO
CEI
A3
1B
AS
17
AS
00,
COLUMN 1/0 CIRCUITS
002
COLUMN SElECT
01,
01,
"
16
Al
003
'4
10
13
11
IZ
01 3
A6
00,
Al
OIZ
01, '5
PIN NAMES
rn
(15)
(10)
01 1 01 4
AO A7
A/W l161
R/W
GEl CE2
00
0°1 0°4
00
003
13
AS
ffi
00 4
01 4
01,
INPUT
DATA
CONTROL
eEZ
15
GNO
00,
01 3
00
INS8101A 4
A4
Vee
19>
5-7
DATA INPUT
ADDRESS INPUTS
READ/WRITE INPUT
CHIP ENABLE
OUTPUT DISABLE
DATA OUTPUT
POWER (+5V)
OOz
Switching Time Waveforms (INS8101A-4)
WRITE CYCLE (2)
READ CYCLE (RIW ='"1")
(3)'--+--"'\
00 (COMMON 110)
Note 1: tOF is with respect to the trailing edge of CE1, CE2, or 00, whichever occurs first.
Note 2: During the write cycle, 00 is a logical 1 for commOn 1/0 and "don't care" for separate
1/0 operation.
.
Note 3: 00 should be tied low for separate 1/0 operation.
Switching Time Waveforms (INS8111A·4).
WRITE CYCLE
~----~---IWCY'----------~
READ CYCLE (R/W = '"1';)
Note 1: tOF is with respect to the trailing edge of CE1, CE2, or 00, whichever occurs first.
5·8
Block and Connection Diagrams (INS8111A-4)
~vcc
A3
...-...!o GND
A2
18
VCC
2
17
A4
A1
3
16
R/W
AJ
AO
4
15
CE1
A4
A5
5
14
1/°4
A6
6
13
1/°3
A7
7
12
11°2
GND
8
11
110 1
00
9
10
CE2
AO
A1
CelL ARRAY
32 ROWS
32 COLUMNS
ROW
SHECT
A1
COLUMN 110 CIRCUITS
COLUMN SELECT
1/01
INPUT
DATA
CONTROL
1102
I/O 3
A5
A6
A7
PIN NAMES
1/04
ADDRESS INPUTS
OUTPUT DISABLE
READ/WRITE INPUT
CHIP ENABLE 1
CHIP ENABLE 2
DATA INPUT/OUTPUT
AOA?
00
R/W
GEl
en
en
RiW
(15)
CE2
(101
11°1 1/°4
{l61
rc
A7-AO
INSB111A-4
A7-AO
00 (9) ~
03-00
1/04-1/01
MEMR
M
Truth Table
OD eEl
eE2
R/W
MEMW
MY
I
DIN DOUT
X
X
H
X
X
Hi-Z
X
l
l
l
l
l
X
l
l
l
H
l
l
l
H
H
X
X
H
X
X
X
X
X
X
X
H
DO
DOUT
MODE
ff1
C
Not selected
Write "0"
B
A7-AO
..
07-04
.
U
Write "I"
Read
S
Hi-Z
Hi-Z
,.
...
MEMR
5-9
INSBlllA-4
A7-AO
1/04-1/01
DO
MEMW
tA.-
CE 2
.~
ts
R
0
Rlii
ts
ff1
I
CE 2
.~
5.6.3 The INS8102A 1 K (1024 x 1) Static RAM
General Description
In addition to the INS8102A, a low power version, the INS8102Al, is also available. This
selection offers a maximum operating current
of 33 mA and a guaranteed standby mode down
to a power supply voltage of 1.5V.
The INS8102A family of high speed 1024 x 1·bit
static random access read/write memories are
manufactured using N-channel depletion-mode
silicon gate technology. Static storage cells
eliminate the need for clocks or refresh circuitry and the resultant cost associated with
them.
Features
low threshold silicon gate N-channel
technology allows complete DTI,./TTl compatibility of all inputs and outputs as well as a
single 5V supply. The separate chip enable input (CE) controlling the TRI-STATE® output
allows easy memory expansion by OR-tying individual devices to a data bus. Data in and data
out have the same polarity.
•
•
.,
•
•
•
Single 5V Supply
All Inputs and Outputs Directly DTL/TTl
Compatible
Static Operation- No Clocks or Refresh
TRI-STA TE Output for Bus Interface
All Inputs Protected Against Static
Charge
Access Time Down to 250 ns
Block Diagram
Connection Diagram
Dual-In-Line Package
AO
16
A6
Al
CElL
ARRAY
32 ROWS
32 COLUMNS
ROW
SELECTOR
A2
A7
A5
..,.!..o GNO
R/W
A3
Al
12 DATA OUT
A2
A4
11 DATA IN
A3,
lD
R/W
OATA
OUT
A4
VCC
AD
GNO
TOP VIEW'
CE
A5
A6
A7
AS
A9
logic Symbol
Truth Table
AD
Al
R!W
DIN
H
X
X
Hi-Z
Not selected
L
L
L
L
Write "0"
L
L
H
H
Write "1"
A7
Read
AS
L
H
X
DOUT
DOUT
DIN
A2
CE
MODE
AJ
A4
A5
A6
A9
5-10
°OUT
RiW
CE
Switching Time Waveforms
VIH
CD
ADDRESS
VIL
VIH
CHIP
ENABLE
VIL
VOH
DATA
OUT
VOL
FIGURE 1. Read Cycle
r-----------twc----------~
ADDRESS
1-------- tcw - - - - - I
VIH---'
READ/
WRITE VIL - -_ _ ' - _ _ _ _ _ _ _ _J
DATA
IN
DATA STABLE
FIGURE 2. Write Cycle
, NoteG);
Note@;
Note@:
Note@) :
Input reference level for timing is 1 ,5V.
VOH = 2V is reference level for output high,
VOL
=
0,8V is reference .level for output low,
Input rise and fall times are 10 ns,
Standby Waveforms (lNS8102AL)
VCC - - -....
CE
L5V
1.5V sVpD s 4.75V
1.5V s VpD s C'E s 2v
When: 2V s VpD s VCC MAX
CE must be ~V minimum.
-::.:..,f----''-------
~-------------~----
5-11
5.6.4 MM2114 4K (1024
x 4)
Static RAM
General Description
National's silicon gate technology provides excellent protection against contamination and
permits the use of l.ow cost Epoxy B packaging.
The National MM2114 is a 1024 by 4 static. ran.
dom access m!lmory element fabricated using
N-channel enhancement mode Silicon Gate
technology. Static storage cells eliminate the
need for refresh and the peripheral circuitry
associated with refresh. The data is read out
nondestructively and has the same polarity as
the input data. Common Data Input/Output
pins are provided. No address setup times are
required.
Features
•
•
•
•
The 2114 is directly TTL compatible in all
respects: inputs, outputs, and a single+5V
supply. The Chip select allows easy selection
of an individual package when outputs are ORtied. The features of this memory device can be
combined to make a low cost, high performance and easy to manufacture memory
system.
•
•
•
•
•
Organization 1024 Words by 4 Bits
Common Data Input and Output
Single + 5V Supply Voltage
Directly TTL Compatible - All Inputs and
Outputs
Static MOS - No Clocks or Refreshing
Required
Identical Cycle and Access Time
Simple Memory Expansion - Chip Select
Input
Low Cost Packaging - 18 Pin Epoxy B
Dual-In-Line Configuration
Tri~State Output - OR-Tie Capability
A6
AJ
A4
.......,!!..o,vcc
J
18
Vee
A5
2
17
A7
A4
3
16
AS
A3
4
15
Ag
Ao
5
14
1/0 1
A1
6
13
1/0 2
A2
7
12
1/°3
es
S
11
1/°4
9
10
R/W
....--!o GNO
AS
ROW
SELECT
CHL ARRAY
64 ROWS
64 COLUMNS
A6
A7
AS
17
16
liD 1
1/02
I/O J
1104
11
GND
11
PIN NAMES
CS
R1W
10
,5-12
AO·Ag'
ADDRESS INPUTS
RIW
,READ/WRITE INPUT
cs
CHIP SELECT
11°1'11°4
DATA INPUT/OUTPUT
Switching Time Waveforms
READ CYCLE (RiVi
="1")
~-----------------tRC------------------~
~--------------tA----------------~
DOUT------------------------------------~~
~I----~
NOTES:
1. A Read occurs during the overlap of a low CS and a high RI'W
2. A Write occurs during the overlap of a low l!S and a low RlW
3. If the CS low transition occurs simultaneously with the R/W Low
transition, the output buffers remain in a high impedance state.
4.R/W must be high during all address transitions.
WRITE CYCLE
~-------------------twC:------------------~~
~-----------tw'----------~~
R/W
OOUT~~~~~~~~~~----~--------r_----------------tow -~-----~- tDH
5-13
5.6.5 MM5257 4096 x 1 Static RandomAccess
Memory
Features
General Description
The MM5257 is a 4096 word by 1·bit static ran·
dom access memory fabricated using
N-channel silicon-gate technology. All internal
circuit~ arefully static and therefore ~Elquire no
clocks or refreshing for operation. The data is
re.ad out nondestructively and has the same
polarity as the input data.
•
•
•
•
•
•
•
•
The separate chip enable input (CE) controlling
the TRI-ST ATE® output allows easy memory
expansion by OR-tying individual devices to a
data bus.
All Inputs and Outputs Directly TTL
Compatible
Static Operation - No Clocks or
Refreshing Required
.
Low Power - 200 mW Typical'
High Speed - 250 ns Typical
TRI-STATE Output for Bus Interface
Separate Data In and Data Out Pins
Single + 5V Supply
Standard 18-Pin Dual-in-Line Package
The output is held in a high impedance state
during write to ~implify common I/O applications.
Connection Diagram
Logic Symbol
Dual-In-Line Package
18
AD
A1
VCC
01
A2
A3
A4
A5
A6
A7
AS
A9
A1D
01
DO
A11
CE
TOP VIEW
Truth Table
- MODE
CE
WE
01
H
X
X
DOUT
Hi-Z
Not Selected
L
L
H
Hi-Z
Write 1
L
L
L
Hi-Z
Write 0
L
H
X
DOUT
Read
5-14
WE
Functional Description
Two pins control the operation of the MM5257.
Chip Enable (GE) enables write and read operations and controls TRI-STATING of the dataoutput buffer. Write Enable (WE) chooses between READ and WRITE modes and also control
output TRI-STATING. The truth table details
the states produced by combinations of the CE
and WE controls.
Iy during the time both CE and WE are low.
Minimum write-pulse width, twP, refers to this
simultaneous low region. Data set-up and hold
times are measured with respect to whichever
control first rises. Successive write operations
may be performed with CE continously held
low. WE then is used to terminate WRITE between address changes. Alternatively, WE may
be held low for successive WRITES and CE used for WRITE interruption between address
change.
READ-cycle timing is shown in the section on
Switching Time Waveforms. WE is kept high.
Independent of CE, any change in address code
causes new data to be fetched and brought to
the output buffer. CE must be low, however, for
the output buffer to be enabled and transfer the
data to the output pin.
In any event, either WE or CE (or both) must be
high during address transitions to prevent er'
roneous WRITE.
Address access time, tA, is the time required
for an address change to produce new data at
the output pin, assuming CE has enabled the
output buffer prior to data arrival. Chip Enableto-output delay, tco, is the time required for
CE to enable the output buffer and transfer
previously fetched data to the output pin.
Operation with CE continously held low is permissible.
Stand-by operation allows data to be maintained with approximately 50% less operating current. The 2 requirements to guarantee data
retention are: a) the power supply voJt~ must
meet the condition VCC~ 1.5V, and b) CE must
be controlled; to disable the chip prior to reducing VCC, to keep it disabled during the time
VCC is reduced, and to maintain the disabled
state long enough after VCC is increased to
normal for the chip' to recover. These requirements are shown by the stand-by
waveforms and characteristics.
WRITE-cycle timing is shown in the section on
Switching Time Waveforms. Writing occursonBlock Diagram
18
,+-0 Vec
AZ
(LSBI
9'
+-OGNO
A3
AU
CELL ARRAY
64 ROWS
64 COLUMNS
ROW SELECT
1 Of 64
Al
A6
COLUMN 1/0 CIRCUITS
00
COLUMN SELECT
""""_--1
REAO/WRITE
CONTROL
All
(MSB)
A1D
5-15
A9
A8
A5
A4
(LSBI
Switching Time Waveforms
. Read Cycle
ADDRESSES V'I{
=:::~~y-:--"';"--:--------'II
V,L
==:;F1'----.:.........,--.:......:..--....;t
WRITE ENABLE
VIH~~~~~-------~--------:--r-t-----------~~~~~~~~
'(NOTE 31
V,L
CHfPEPofA8LE
V,H
==========~~--------~:.-.::....:.+-+~-,t"-----:----:....,.-
V,L
---------:c~_r.--------
DATA OUT
.......-W../
-
-- -
-OPEN- - -
-"- -OPEN- - - - -
Write Cycle
ADDRESSES'
V,H
V,L
twp (NOT~
CHIP ENABLE
(NOTE 51
V,H
WRITE ENABLE
(NOTE 51
V,H
DATA IN
V,L
V,L
V,H
V,L
DATA OUT
2.0
2.
Note 3: WE is high during a read cycle (WE
V'H(M'NII.
Note 4: twp defines the period yvhen both CE and
and tWR are referenced to the earlier of CE
~~
- - OPEN-
0.8
cr
wt are
orWE going
low. tAW is referenced to the later of
or WE going low while
high. tWOT and two are referenced to WE with CE low.
Note 5: Either WE or CE {or bothl must be hi'gh d~ring address transitions to prevent erroneous write.
Standby Waveforms
VCES ------:,.----------~---~.
,~ :::-----~-~--2-:-p~ ~J_5V
.• .
VpD
VALID
_____________
-
5-16
_J~::~
tos, tDH
5.6.6
MM5281 4096·BIT Fully TTL Compatible
Dynamic RAM
General Description
technology, which is an ideal choice for high
density integrated circuits. The MM5281 uses a
single transistor cell to minimize the device
area. The single device cell, along with unique
design features in the on-chip peripheral circuits, yields a high performance memory
.
device.
National's MM5281 is a 4096 word by 1 bit fully
TTL compatible dynamic RAM. It incorporates
the latest memory design features and can be
used in a wide variety of applications, from
those which require very hlgh speed to ones
where low cost and large bit capacity are the
prime criteria.
Features
The MM5281 must be refreshed every two ms.
This can be accomplished by performing a
READ cycle at each of the 64 row addresses
(AO-A5)' The chip select input can be either
high or low.for refresh.
•
•
•
•
•
•
•
•
The MM5281 has been designed with minimum
production costs as a prime criterion. It is
fabricated using N-channel silicon gate MOS
Organization: 4096 x 1
Access Time 250 ns Maximum
Cycle Time 400 ns Minimum
TTL Compatible
Address Registers On-Chip
TRI-STATE® Output
Simple Read-Modify-Write Operation
Industry Standard Pin Configuration
Block and Connection Diagrams
WE (12)
CS (5)
----------------------j CQ~~~Ol
CS
LATCH
Dua!.! n·Line Package
All (4)
Al0(J)
Vss
A9(2)
AS
J11
AS (21)
11
A7
10
AG
Vao
18
19
IT
Nt
11
16
AS
15
A4
14
AJ
13
WE
12
Al (2(})
AS (19)
AS (15)
A4114}
COLUMN DECODER 11 '"
A30l)
A2 (10)
-I BU~~.11
t
SENSE AMPLIfiERS (64)
AIlS)
,
ADla)
D'N
Dotn
(6)
(7)
CEll
ARRAV
4096 SlTS
2
1
TIU1}
'100
V"B
A9
3
4
AID
All
5
CS
5
7
O'r>.!
[lOUT
-
-
,
B
AO
A1
TOP VIEW
i14J - - +12V
Order Number MM5281 0
Vss (181--0v
v.. ( 1 ) -_ _ SV
Vcc l11j--·5V
Pin Names
AD-A11
Address Inputs
CE
Chip Enab!e
CS
Chip Select
V DD
D'N
Data Input
Vss
Ground
Do~
Data Output
WE
Write Enable
NC
Not Cpnnected
l<-
"Refresh Address AO-A5
5-17
V BB
Power (-5V)
.V ~c
Power (+5V I
Power (+12VI
10..1 11
A2
Vc ,
5.6.7 MM5290 16,384 x 1 Bit Dynamic RAM
General Description
ture of the MM5290. This process c.ombines
high density and performance with reliability.
GreClter system densities are achievable by the
use of a 16-pin dual-in-line package for the
MM5290.
The MM5290 is a 16,384 x 1 bit dynamic RAM. It
features a multiplexed address input with
separate row and column strobes. This added
flexibility altows the MM5290 to be used in page
mode operation.
Features
The MM5290 must be refreshed every 2
ms. This can be accomplished by performing
any cycle which brings the Row Address Strobe
active including an RAS-only cycle at each of
the 128 row addresses.
•
•
•
•
•
N·channel double-poly silicon gate technology,
developed by National, is used in the manufac-
•
•
Access Times: 150 ns, 200 ns, 300 ns
Low Power: 462 mW Max
.
TTL Compatible: Ait Inputs and Output
Gated. CAS - Noncritical Timing
Read, Write, Read-Modify-Write and RASonly Refresh Cycles
Page Mode Operation
Industry Standard 16-pin Configuraton
Block and Connection Diagrams
~
Al-
~
12V
A2-
Vss
Vee
VOO
AO-
~
GNO
5V
01
-5V
A3-
MASA6ROW
CLOCKS
ROW
CLOCKS
rn---OI
MEMORY AARAV
64 X 128
CAS -'-L..-L....==-.J
COLUMN
CLOCKS
SENSE AMPLIFIERS (1281
MEMORV ARRAY
WRITE
Wf--<.JL..-L=::'::"J
00
64 X 128
CLOCKS
Dual-In-Line Package
16 Vss
VB'
Pin Names
15 CAS
01
"
WE
13
AAS
12
AD
11
A2
10
AI
9
VOO
00
A6
A3
A.
AS
Vee
TOP VIEW
5-18
RAS
CAS
Row Address Strobe
Column Address Strobe
WE
Write Enable
AO-A6
DI
DO
VDD
VCC
VSS
VSB
Address Inputs
Data Input
Data Output
Power (12V)
Power (5V)
Grou~d
Powed-5V)
Switching Time Waveforms
Read Cycle
----IcAc
____________
~
~-.:__-.:__-_-.:_.:_.:_.:__-~-O-PE-N-------:.--'-R-AC-----------------
__----V-A-L-IO----'O-F-FJ-_·----------------•
Write Cycle (Early Write)
RAS
CAS
AU-A6
VIHCVll-
V1HCVll-
VIHVll-
WE
VIHCVIL-
01
VIH -
Vil -
VOH-
OPEN
00
VOl-
5-19
DATA
)
SiNitching Time Waveforms (Continued)
Read-Write Cycle, Read-Modify-Write Cycle
100
CAS
AD-A6
VIHCVll-
VIHC-
Vll-
VIHVll-
WI
DO
VtHC -
Vll-
VOHVOL -
f---------tRAC-~-ttos
tOH
I
ot .:::=_"--~A-A~-t:--~~
RAS-Only Refresh Cycle
AU-A6
00 VOH- ----------------------O.'N----------------------VOl-
Note. CAS = V'HC, WE = don't car.
5-20
Switching Time Waveforms (Continued)
Page Mode Read Cycle
rn
I!)[!
VIHCVll-
VIHC Vll-
AD-A6
DO
V'HVIL-
VOH VOl-
WI'
VIHC VIL-
--
tACS
tRCH
Page Mode Write Cycle
WE
VIHC-
VIL- ~~~~~~~~____~~~~~~~~____~~~~~~~I~~~~~____~~~~~~~~~~~
VIH01
Vll-
=...."""=..
5-21
Timing Flow Chart
ACTIVE
TRANSFER DATA FROM SelECTED
COLUMN IN MEMORY ARRAY
TO liD LINES IN READ MODE
AND VICE VERSA IN WRITE MODE
PRECHARGE
DISABLE SELECTED ROW.
PRECHARGE ROW:ADDRESS LATCH,
ROW DECODER AfjDMEMORY ARRAY
5·22
5.6.8
MM1702A 2048·Bit
Programmable ROM
Electrically
General Description
The MM1702A is fabricated with silicon gate
technology. This low threshold technQlogy
allows the design and production of higher performance MOS circuits and provides a higher
functional density on a monolithic chip than
conventional MOS technologies.
The MM1702A is a 256 word by 8-bit electrically
programmable ROM ideally suited for uses
where fast turn-around and pattern experimentation are important. The MM1702A undergoes
complete programming and functional testing
on each bit position prior to shipment, thus insuring 100% programmability.
Features
•
The MM1702AQ is packaged in a 24-pin dual-inline package with a transparent lid.
The
transparent lid allows the user to expose the
chip to ultraviolet light to erase the bit pattern.
A new pattern can then be written into the
device. The MM1702AD is packaged in a 24-pin
dual-in-line package with a metal lid and is not
erasable.
Fast Programming - 30 Seconds for all
2048 Bits
All 2048 Bits Guaranteed Programmable
-100% Factory Tested
Fully Decoded, 256 x 8 organization
Static MOS - No Clocks Required
Inputs and Outputs DTL and TTL
Compatible
TRI-STATE® Output - OR-tie Capability
Simple Memory Expansion - Chip Select
Input Lead
Direct Replacement for the Intel 1702A
•
•
•
•
•
•
The circuitry of the MM1702A is entirely static;
no clocks are required.
•
A pin-for-pin metal mask programmed ROM, the
MM1302 is ideal for large volume production
runs of systems initially using the MM1702A.
Dual-In-Line Package
VOD
I..
Block and Connection Diagrams
Vee
13
Vee
22
A]
A4
A5'
20
21
A6
19
18
A1
VGG
11
Vas
16
15
PRO·
GRAM
CS
"
13
PROGRAM
AD
A1~ INPUT
I
DRIVERS
A1-4
&
DE·
COOER
20'~BIT
DATA
OUT 1
ROM
MATR'X
(256 x 8)
-
r--
DATA
OUT8
Note: In the reall mode a logIc
"1" at the address IIlputs and data
outpub is a high and logIC "0" is
a low.
2
1
A2
A1
3
AO
•
5
6
1
8
9
10
11
~~~"'B--"-.;....-.O.;..AT~A...;O-UT--"-~.,.,M:~~
rz
Vee
TOP VIEW
"This pin is the data input lead during programming.
Pin Names
AD-A7
Address Inputs
CS
Chip Select Input
DOUT 1 - DOUT s
Data Outputs
. Order Number MM1702AD
Order Number MM1702AQ
Pin Con'nections*
MODE/PIN
12
13
14
15
16
22
(Vce)
(PROGRAM)
(eS)
(VBB)
(VGG)
(Vee I
23
(Vee!
Read
Vee
Vee
GND
Vee
VGG
Vee
Vee
Programming
GND
Program Pulse
GND
Vss
Pulsed VGG (V ,L4P )
GND
GND
*The external lead connections to the MM1702A differ, depending on whether the device is being programmed or used in
read mode. (See following table.) In the programming mode, the data inputs 1.-8 are pins 4-11 respectively.
5-23
Read Operation Switching Time Waveforms
(b) Power~Down Option (Note 1)
(a) Constant VGG Operation
r----'
CYCLE TlIVIE
l/f
----'~
VtH -Y10%
~
90%
"---
fi-
ADDRESS
1L
L
!
cs V'H~
V
V"
DATA
OUT
V~H
-j
I '9 W
I .
I
I r;;;A OUT
.'
V~l ~~~~,___ ~~~_.
_IN~~AlID
t-------'''' ---------t
.
DESElECTION Of DATA OUTPUT IN ORTIE OPERATION
V'"\/
OESElECTlON OF DATA OUTPUT IN OR-TIE OPERATION
C
ADD.ES<~X:
-Jh...}-_ _ _ _ _ _ _-:-_ __
ADDRESS
-
V"~(NDTE2I----_.'m
V
r---""':tr.---,H
os
VtH~~O%'
-
I
I
V"
VOH---t
~90%
'.---1.1'901.--.
v
"v::
"-
ClOCKEO
DATA
VGG
OUT
vo,
i
I
'0""
I
''"
---i
II
[--
I
V GO
'L.
"-+---"
teo : -
ConditIOns of Test:
Input puiS/! amplitulie5: 0-4V, t,. tl S 50 liS. Output load IS 1 TTl
ments made at output of TTl gate (tpo S Hi ns), Cl ~ 15 pF,
-1
\1
VO
DATA OUT
gat~.
measure
Note I, Tile output Will ,em~tn valid fOI IoHc as long as clocked Vee IS at Vee, An
addless [h~n~ may occur as soon as tile outpull! sen~ed (docked 'Vee may stll! be atVed. O~t~ b~C\lme~ Invalid fOI the old addre$ when docked Vee IS returned to Vee
Note 2: "CS make~ a tranSition from V,L to V,H while docked VCG IS at Vce, then
desele'ctton of output oceuls at too as Ihown In static operatlol'! wltll constant VGG ·
Operation of the MM1702A in Program Mode
desired bit information patterns on the data input terminals.
Initially, all 2048 bits of the ROM are in the "0"
state (output low). Information is introduced by
selectively programming "1 's" (output high) in
the proper bit locations.
During the programming, VGG, VOD, and the
Program Pulse are pulsed SIgnals.
MM1702A Erasing Procedure
The MM1702A may be erased by exposure to
high intensity short-wave ultraviolet light at a
wavelength of 2537.8.. The recommended integrated dose (i.e. UV intensity x exposure
time) is 6W sec/cm 2. Examples of ultraviolet
sources which can erase the MM1702A in 10 to .
20 minutes are the Model UVS-54. and Model
S-52 short-wave ultraviolet lamps manufactured
by Ultra-Violet Products, i Inc. (5114 Walnut
Grove Avenue, San Gabriel, California). The
lamps should be used without short-wave
filters, and the MM1702A to be erased should
be placed about one inch away from the lamp
tubes. There .exists no absolute rule for erase
time. Establish a worst case time required with
the equipment. Then over-erase by afactor.of 2,
i.e., if the device appears erased after 8
minutes, continue exposure for an additional 16
minutes for a total of 24 minutes. (May be expressed as x + 2x.)
.
Word address sel.ection .Is done by the same
decoding circuitry used in the READ mode (see
table for logic levels.) All 8 address bits must
be in the binary complement state when pulsed
VDD and VGG move to their negative levels.
The addresses must be held in their binary complement state for a minimum of 25Jls after VDD
and VGG have moved to their negative levels.
The addresses must then make the transition to
their true state a minimum of 10Jls before
the program pulse is .applied. The addresses
should be programmed .in the sequence 0-255
for a minimum of 32 times. The eight output terminals are used as data inputs to determine the
information pattern in the eight bits of each
word. A low data input level (- 48V) will program a "1"and a high data input level. (ground)
will I~ave a "0:.'. All eight bits of one word are
programmed simultaneously by setting the
5-24
5.6.9 MM4204/MM5204
Electrically
Programmable 4096·Bit Read Only
Memory (EPROM)
General Description
•
The MM4204/MM5204 is a 4096-bit static Read
Only Memory which is electrically program·
mabie and uses silicon gate technology to
achieve bipolar compatibility. The device is a
non·volatile memory organized as 512 words by
8 bits per word. Programming of the memory is
accomplished by storing a charge in a ceilloca·
tion by applying a - 50V pulse. A logic input,
"Power Saver," is provided which gives a 5:1
decrease 'in power when the memory is not be·
ing accessed.
•
•
•
Applications
•
•
•
•
•
•
Features
•
•
•
Field Programmable
Fast Program Time: Ten Seconds Typical
for 4096-Bits
Fast Access Time
MM4204
1.25/Ls
MM~M
•
•
•
Easy Memory Expansion • TRI·ST ATE outputs allow for memory expan·
sions.
Applications
Programming of the memory array and chip·
sele.ct active levels is accomplished by changing two masks during fabrication.
Block and Connection
,',
•
•
•
Microprocessor Instruction Store
Control Logic
Table Look-Up
Diagram~
DUal'ln·Line Paj:kage
01
.24
AI
A1~-'"----'
D2
Z3
A&
A2
Vee
.AO
OJ
ROW DECODE'
OS
00
07
O'
~.
1=
rr
A.
22 AI
A4
21 Al2
AJ
2~
A2
19 AID
O'
8192 x'a
ROM
ARRAY
eSI
AI
18 All
AO
11 08
01
16 01
02 10
15 0&
11
14 05
OJ
"
GND 12
04
TOPVIEW
AO
A9
Al0
All
Al2
eSI
Switching Time Waveforms
2.4V
ADDRESS
Z.4V
1.5V
ADDRESS .
Mv
DAV
zAV
Z.4V
1.5V
CHIP SelECT
CHIP SELECT
D.4V
DAY'
'DFF
TRI·STATE@
OUTPUT
OUTPUT
'AC
5-40
TRI·siAT~
VALID
I
Chapter 6
MAXI·ROMs
MEMORY
Part Number/Description
INPUT/OUTPUT
~
SERIES 8000
MICROPROCESSOR
l"-
M
I
C
I.)-
R
0
B
U
5
PERIPHERAL
CONTROL
TM~
COMMUNICATIONS
• Trademark, National Semiconductor Corporation
INS8298E
8080A LLL Basic Interpreter
MM52132
-MAXI·ROM (32K, 450 ns Access)
INS8364E/MM52164
MAXI·ROM (64K, 450 ns Access)
3:
MAXI-ROMs
l>
-:0><•
o
3:
(/)
6.1 GENERAL DESCRIPTION
The BASIC interpreter accepts both program
statements and control commands. Program
statements describe (to the BASIC interpreter)
operations to be performed on program data. A
program statement preceded by a line number
is inserted into the program for later execution
at a spot determined by the line number. If no
line number precedes the statement, it is ex·
ecuted. immediately and then discarded. This
latter mode, known as "immediate" or "direct,"
is especially valuble during program checkout.
Control commands specify actions that alter
the status of the user's program; for example,
they direct the execution, saving, and retrieval
of programs.
MAXI·ROMS are 32K, 64K and up static mask·
programmable ROMS. This large size
allows
storage of complete programs, tables, etc .. Any
user program or data may be mask programmed.
6.2 INTERFACING TO MEMORY
Basically, interfacing to memory is the same as
any other ROM. Memory address location
assignments should be coordinated with loca·
tions that the MAXI·ROM stored program
requires.
6.3 UNPROGRAMMED MAXI·ROMs
Two unprogrammed MAXI·ROMs are currently
available, as follows:
•
•
A Hexadecimal Debugging Routine (HOT) is
also available on the INS8298E ROM. HOT
allows the user to examine internal registers
and memory locations and modify their con·
tents. HOT is called from the BASIC interpreter
to help debug user·developed software. Input
and output data representation is in
hexadecimal format. In addition to the usual
debugging capabilities, HOT also has com·
mands to perform the following functions:
• Test a specified range of memory loca·
tions
• Load programs in hexadecimal, NSC, and
Lll binary formats
• Save the contents of a specified range of
memory locations
MM52132 (4096 x 8 bits)
INS8364E/MM52164 (8192 x 8 bits)
These devices can be mask·programmed with
any user program or data.
6.4 INS8298E 8080A LLL BASIC
INTERPRETER
The 8080A LLl BASIC interpreter operates with
the 8080A microprocessor system to provide a
high·level, easy·to·use language for perforl\ling
both control and computational functions.
Designed for use in data acquisition and con·
trol applications, the LLL BASIC interpreter
enables the user to write and debug a program
on·line ..
System Configuration
BASIC's internal I/O assumes a system con·
figured in the manner of the BLC (or SSC) 80/10
or 80/20 Single·Board Computers, which use an
INS8251 USART for console I/O. The data and
status ports are at I/O addresses EC and ED
(hex), respectively. It is also assumed that the
user's system includes a monitor program (e.g.,
the SlC 80p Monitor) to initiate execution of
BASIC and to initialize the USART.
The LLL BASIC interpreter (resident on the
INS8298E ROM) is used to translate, debug, and
execute user·written ASCII programs in
read/write memory (RAM). Each statement is in·
terpreted from its ASCII BASIC format and then
executed line·by·line.
The minimum hardware configuration required
to support the LLL BASIC interpreter is as
follows:
See the National Semiconductor LLL BASIC
users manual for a description of the LLL
BASIC language. While this manual describes
the LLl BASIC language, it is not intended as a
primer. Familiarity with high·level computer
programming languages is assumed; familiarity
with BASIC is desirable but not required. There
are many excellent introductory textbooks on
BASIC that should be consulted if a more
tutorial approach is desired. See also the
INS8298E 8080A LlL BASIC interpreter data
sheet.
•
•
•
•
•
•
6·1
8080A Central Processing Unit (CPU)
110·Baud ASCII Terminal Illterface
INS8298E 8K·by·8 Read Only Memory
(ROM)
At least 512 bytes of Read·Write Memory
(RAM) for user·written programs
Model 33 ASR Teletype (TTY) or similar
terminal
Power Supplies (±5V, :!:12V)
MEMORY
Chapter 7
Input/Output
Components
Part Number/Description
INS8202
Tri-5tate 80Bit Bus Driver
INS8203
Tri-State 80Bit Bus Driver (Inverting)
INS8208B
80Bit Bi-Directional Bus Driver
INS8216
4-Bit Bi-Directional Bus Driver
INS8226
4-Bit Bi-Directional Bus Driver
(Inverting)
INS8212
80Bit 110 Port
M
~
I
SERIES 8000
C
R
MICROPROCESSOR ~.)---fO
~::::::::::::~
B
U
5
TM"
PERIPHERAL
CONTROL
COMMUNICATIONS
* Trademark, National Semiconductor Corporation
:::::J
Input/Output
Components
-
"C
C
oc
-
"C
C
( ')
7.1 GENERAL DESCRIPTION
The general purpose of the Digital Input/Output
components is to supplement the functions
already present in other devices. Typical func·
tions of these devices are 110 buffers, data/ad·
dress latches, address decoders, and program·
mabie 110 ports. (See also Chapter B.)
•
Input/Output Addressing
Depending on the system input/output environment, the input/output devices of the typical in·
terface (figure 7·1) may be addressed using
either the isolated input/output or memory map·
ped input/output technique and linear select.
Thus, no decoders are required for generating
chip select signals and each device has an ex·
clusive enable bit. Figure 7-2, shows an exam·
pie of how to address six National Semiconductor INS8255 Programmable Peripheral Interface
devices using the isolated input/output addressing technique and linear select. In this ex·
ample, the addressing format shown is the second byte of an IN or an OUT Instruction.
. Similarly, figure 7·3 shows an example of how
to address 13 INS8255 devices using the
memory mapped input/output addressing
technique and linear select. In this example,
the addressing format shown could be second
and third bytes of any memory reference in·
struction that is used for the input/output
devices (for example, MVI M, LOA, STA, SHLD,
ADD M, ANA M, Et cetera). See chapter 11 "Programming for INS8080A instruction set.
Programmablei nput/output and peripheral
functions enable the system designer to con·
figure and adapt interface lines to his own reo
quirements. In the Series BOOO family, the
INSB212 B·Bit Input/Output Port, the INSB255
Programmable Peripheral Interface and the
INSB251 Programmable Communication Interface (see chapter 9) can satisfy· these system input/output requirements. The INS8212 is a
multimode chip fabricated using National
Semiconductor's Schottky bipolar technology.
The device may be used to implement latches,
gated buffers, or multiplexers. Thus, the chip
can be used in a microcomputer system as
either an address buffer, a priority interrupt ar·
bitrator, or an input/output peripheral interface.
The INSB255 is a general-purpose programmable parallel input/output chip fabricated us·
ing the silicon gate MOS process. This device
is designed to interface peripheral equipment
to the BOBOA system bus.
•
Interfacing 8·Bit Peripherals
As shown in the typical input/output interface
of figure 7-1, two National Semiconductor
INS8255 Programmable Peripheral Interface
devices and three National Semiconductor
INS8212 Input/Output Port devices are provided
for interfacing 8-bit peripherals (keyboards, sen·
sors, paper tape, displays, et cetera) to the
system. Since each INS8255 has three ports,
up to 24 bits of programmable input/output data
and control. signals are provided by each
device. Note that the 110 Wand 110 R signals
from the Control Bus are used as write and read
command signals for the transfer of data
(01'00) to and from the INS8255 devices. Also,
note that the 110 W signal is used in conjunction with the A5 address bit to select the
INS8212 device that functions as an output
port; and that the I/O R signal is used in conjunction with either the A6 or the A7 address bit
to select one of two INS8212 devices that function as interrupting input ports. The addressing
formats for the INS8255 and INS8212 devices
\ are shown in figure 7-4.
Due to the simplicity of the devices contained
in this chapter, the majority of the devices will
not be covered in any detail.
The digital 110 components illustrated in this
section are but a small sample of those
available from National Semiconductor. Detail·
ed operational and parametric information on
each of the devices is contained in Appendix 0,
Device Data Sheets.
7.2 INTERFACING INPUT/OUTPUT
COMPONENTS
The input/output devices use the same
MICROBUS for interfacing to the' CPU group as
the semiconductor memory components. A
typical input/output interface is shown in figure
7·1.
This interface enables the INSBOBOA
Microprocessor to communicate with
peripheral devices or structures such as
keyboards, paper tape, floppy disks, printers,
displays, data communication interfaces, sensors, relays and motor controls ..
' . Interfacing Serial Devices
As shown in the typical interface of figure 7-1,
one National Semiconductor INS8251 Program7-1
o
3
"C
o
:::::J
('I)
:::::J
CJ)
SERIAL DATA
COMMUNICATION
,...
#2
INS8255
INS8251
RDWR
..
flOW
iTOR
J
CE
07-00
~
.
C/O
RD
C
,.
WR
07-00
..
(
A4
~
M
#1
INS8255
CS
I
C
R
...
,..
A7
AO
RD
A1
WR
07·00 CS
I,)
flow
IIOR
AO
A3
AO
A1
IIOR
...
,..
B
0
U
N
SYSTEM
CLEAR
~
CLR
#3
INS8212
(INTERRUPTING
INPUT PORT)
1I0W
STB
P-
~C CLR
FROM INPUT
DEVICE
DS2
#2
INS8212
(INTERRUPTING
INPUT PORT)
STB
MD
t
NOTE:
INT
TO
MULTI·
LEVEL
PRIORITY
CIRCUIT
OR
INS8080A
(SEE
NOTE)
,.
A5
DS2
MD
~
G~D
FROM INPUT
DEVICE
A1
#1
INS8212
(OUTPUT PORT)
MD
t
G~D
P-
Ao
I
DS1
INT
A1
\
S
...
DS1
A2
...
AS
DS2
AO
.. II.
(
DS1
-..j
...
....
~
Jcc
TO
MULTI·
LEVEl
PRIORITY
CIRCUIT
OR
I NS8080A
(SEE
NOTE)
IF ONLY ONE INS8212 INTERRUPTING INPUT DEVICE IS USED, THE INT SIGNAL SHOULD BE CONNECTED TO THE INT PINOUT OF THE
INS8080A VIA AN INVERTER. IN Tt-:lIS W~Y, A USER SELECTED SINGLE LEVEL INTERRUPT (RST 7) IS GATED ONTO THE INS8080A DATA
BUS WITH A HIGH·LEVEL DBIN SIGNAL, WHEN THE INTERRUPT REQUEST IS ACKNOWLEDGED.
Figure 7-1 Typical Input/Output Interface
ADDRESS
BITS
A7
A6
A5
A4
A3
A2
#5
#4
#3
#2
#1
Al
AO
\~----------~----------~/\~--~~I
PORT
SELECTS
DEVICE SELECTS
NSI0624
Figure 7-2. Example of Addressing INS8255 Devices Using
Isolated Input/Output Technique and Linear Select
ADDRESS
BITS
(BYTE 1)
I
\
A7
A6
#6
#5
I
"A5
A4
A3
A2
#4
#3
#2
#1
Al
A15
\
1\
/\
PORT
SELECTS
A14
A13
A12
All
Al0
A9
AS
#13
#12
#11
#10
#9
#6
#7
I/O FLAG:
1 - I/O
o • MEMORY
DEVICE SELECTS
NSI0743
Figure 7-3. Example of Addressing INS8255 Devices Using Memory
Mapped Input/Output Technique and Linear Select
7-3
I
!
DEV'ICE SELECTS
ADDRESS
BITS
(ElYTE 2)
AO
I
/
maple Communication Interface device is provided for interfacing serial data devices
(MODEMs, communications links, et cetera)
the system. Note that the I/O Wand I/O
signals are also used as write and read command signals for the transfer of data to and
from the INS8251 device. The addressing format for the INS8251 is shown in figure 7-5.
tR
ADDRESS
BITS
I
.;.,."
0
0
I,
0
I
1
,\
A3; ,
A2
#2
#1
I
I
/\
,A1
DEVICE
SELECTS:
0" SELECT
1 .. DESELECT
I
I
AO
I
I
PORT
SELECTS:
00 - PORTA
01 .. PORTB
10" PORTC
11 .. COMMAND
A. INS8S Devices
ADDRESS
, BITS
\
A7
AS
#3
#2
I
AS
#1
1
I
I
1
, [)«[)1
DATA LATCH
-O~AT'A.
I-c:..+..::.-j___
-_
..=~----
LATCH
~t: ~:TCH l
AiN-----'
-,--
OAT
f-~+..:..-tL--~joATAlC1
---- --,
CLR ~- resets d-_-------------'
NOTE: INS8208 B
identical to
DP8304
Logic Table
Inputs
Chip Disable Transmit/Receive
0
a
1
0
1
X
x
B PORT
6
A60--:
'
A7 ~-------L _______ _
VCC
A1
A5
---------,0----0
--------- ...
INS8208B
1
20
A6
~B4
A40---:
A5 e>----J -------L _______ _
A PORT
~B2
_________ "0----0 B3
---~------,
AO
Resulting Conditions
A Por.t
B Port
OUT
IN
IN
OUT
TRI-STATE
TR I-STATE
= Don't Care
7·8
Switching Time Waveforms and AC Test Circuits
VCC
tr = tt<10ns
INPUT
AaOR Ba
OV
R1
VCC
INPUT
10% to 90%
OUTPUT
G
IpDLH
OUTPUT
BaORAa
1.SVt
DEVICE
UNDER
TEST
---~
J
C1
R2
NOTE: C1 INCLUDES TEST FIXTURE CAPACITANCE.
Propagation Delay from A Port to B Port or from B Port to A Port
VCC
tr.:::: tf<10 ns
10%to 90%
APORTo---------~--_4
DEVICE
OUTPUT---h
A PORT
Vce ...-0
1-----..---------<0 B PORT
UNDER
TEST
S2:::: 1
R3
R4
TIR
B PORT
OUTPUT - - - - - '
NOTE: C2 AND C3 INCLUDE TEST FIXTURE
CAPACITANCE
Propagation Delay from T /R to A Port or B Port
tr::::. rf
INPUT
<
10n$
1QO/"to 90%
CD
OV
PORT OUTPUT - - - h
tpHZ
PLZ
~
-
I·
O.SV
--1.
PORT OUTPUT
Vee
PORT
INPUT
2.4V 0
MV
,rC1-----------r--'--l------..--------o
S4
INPUT
PORT
OUTPUT
DeVICE
UNDER
TEST
RS
VCC
NOTE. C4INCLUDES TEST FIXTURE CAPACITANCE
PORT INPUT IS IN A FIXEO LOGICAL
CONDITION. SEE AC TABLE
Propagation Delay to/from TRI-STATE'" from CD to A Port or B Port
7-9
7.6
I.NS8216/82264·BIT BIDIRECTIONAL BUS
DRIVER
The INS8216/8226 are 4·bit bidirectional bus
drivers for bus·oriented systems. Each line of
the driver consists of two separate TRI·STATE
buffers. On one side of the driver the output of
one buffer and the input of the other are tied
together to create a bidirectional TTL port for a
, system bus. The other side of the port has both
a separate input and a separate output to pro·
The
vide for maximum system flexibility.
INS821~ contains non-inverting buffers and the
INS8226 contains inverting buffers.
Features
•
•
•
•
•
DID 0
Low Input Load Current
High Bus Drive Capability
TRI-STATE Outputs
Inverting or Non-Inverting Outputs
MOS compatible High-Voltage Outputs
DID 0
DBO
DBO
DOD 0
DOD 0
Dll
Dll
OB t
OBI
DOt
DDt
01 2
01 2
OB2
OB2
00 2
002
OIJ
OIJ
OB3
OB3
OOJ
OlEN
OOJ
OlEN o---~I_---...J
o---.-_---.....A
L------~--~cs
L-----~--~cs
. INS8216
INS8226
7·10
MEMORY
Chapter 8
Peripheral Control
Components
Part Number/Description
INPUT/OUTPUT
M
SERIES 8000
MICROPROCESSOR
~'--""'6
tF~u
~::::::::::::~
s
COMMUNICATIONS
• Trademark, National Semiconductor Corporation
DP8350
Programmable CRT Controller
INS1771-1
Floppy Disk Formatter/Controller
INS8244
9O-Key Keyboard Encoder
INS8245
16-Key Keyboard Encoder
INS8246
2o-Key Keyboard Encoder
INS8247
4-Digit Display Controller
INS8248
6-Digit Display Controller
INS8253
3-16 bit Programmable Interval Timers
INS8285
Character Generator
INS8292
8-Bit AID Converter with 16-Channel
AnalogMUX
INS8294
3 3/.1-Digil DVM with Multiplexed
BCD Output
"tJ
CD
Peripheral Control
Components
~.
"C
';j'
CD
""'I
Q)
o
o
The Series 8000 Microprocessor Fam i Iy
peripheral control components provide the in·
terface between the microcomputer system
and its commonly used peripherals (or the man·
machine interface to the microcomputer). Be·
ing software programmable, these components
are able to provide complex control functions
that eliminate most of the discrete devices
previously needed to implement the controlling
functions.
The components contained in this chapter pro·
vide complex control functions for some com·
monly used peripherals. Thanks to Large Scale
Integration, these devices allow both a reduced
system chip count and reduced system design
time, particularly because these, devices are
MICROBUS compatible. Due to the extreme
flexibility of the INS8080A Instruction set,
these peripheral control devices may be used
as either memory mapped I/O or as peripherals
(using the INS8080A I/O Control Group Instruc·
tions).
Detailed information on use of the Series 8000
Microprocessor Family Peripheral Control
Components is contained in the following sec·
tions. Parametric information for the com·
ponents is located in appendix D, Device Data
Sheets.
8.2 INTERFACING THE PERIPHERAL
CONTROL COMPONENTS
Figure 8·1, illustrates the general interfacing of
peripheral control components. Most controll·
ed devices will be interfaced directly with the
associated peripheral control component.
Optional circuits might be used for interfacing
to SpeCial devices or to Enhance device
capability.
8.3 KEYBOARD ENCODERS/DISPLAY
CONTROLLERS
A variety of keyboard encoders are available
from a 16·key CMOS device up to a gO·key
MOS/LSI device. All have TRI·STATE·TM
outputs.
.------ ...
rl-
SYSTEM
PROCESSOR
M
I
C
R
0
B
U
S
-::::J
8.1 GENERAL DESCRIPTION
PERIPHERAL
CONTROL
COMPONENT
~
.. ----_ ....
I
I
I
I
I
I
..
I
I
OPTIONAL
CIRCUITS
:I I
_----_ ..
I
Figure 8·1. Interfacing the Peripheral Control Components
"Trademark, National Semiconductor Corporation 8-1
CONTROLLED
DEVICE
"
I
..._------
" "'I
o
o
o
3
"C
o
::::J
CD
::::J
f /)
8.3.1 INS8244 90·Key Keyboard Encoder
Features
The INS8244 is an MOS/LSI keyboard encoder
capable of encoding 90 indiviqual single-pole,
single-throw switch closures into a usable 9·bit
code.
•
•
•
•
•
TRI-STATE Data Outputs
Function Inputs TTL Compatible
Single TTL Clock
N key/Two Key Rollover
Key Bounce Masking
'"
BOUNCE
(17) MASK
VID-V1
¥
U4)
~ DATA
1+----=-0 ~1~~~~l
l_.._~:__...J~~~~~'l13;;"'-,
CLOCK
LD~~!I~ri
+=----+1
CONTROL
o-=--~--.J
STROBE
DATA
XU-XI
(15)
OUTPUT
L _ _ _ _ _ _- . . -_ _ _ _ _ _jf--<~"'ENABlE
~9-81
Figure 8-2. INS8244 Internal Block Diagram
INS8244
KEVBOUNCE
MASK
50Upf
INS8203
8J.B1
J
~~iiI••••~B8-81
C.
R
ol--;;;--r
~
.' ,
.figureS-.. 1 which shows .the read timing. Data
. ,r:nustoccur. withIn the snaded. P9rtion of ,the
timing diagram in Qrder to. be val.ld. The..track
format is ,shown .in figure. 8-12 .. After .. the
..physical!)ensing of the Index and.a nominal
:delay,: the Index' Address Mark is written.' This
gives us the electronic start of that particular
track. The ID record 'contains the sector adress
and also the CRC (Cyclic Redundancy Check).
This Will be used by the error checking circuits
to confirm valid data for ID record. This ID
r~cord is shown expanded in the left center of
.figure 8-~2. A data field record is shown to the
right. Byte one of the data field record is called
the, Data or Deleted Data Address Mark. This
byte will all()w recovery of deleted data prior to
packing of the diskette, because the data is still
there, although byte one is changed to indicate
deleted data: The 128 bytes of user data is
followed by C;RC Bytes for error checking.
The INS1771·1 Floppy Disk Formatter/Con·
troller will function with eitherthe standard size
floppy orthesmallel' mini.floppy;
',.'"
;,
'
" ~,,1
READlWIllTE
HEAD OPENING
INDEX
ACCESS
HOLE
1.5" DlA.·
i.:,
REGISTRATION
OPENING
INDEX
HOLE
TRAcK 00
OPENING FOR
ORIVE HUB
TRACK 76
PLASnC
. ENVELOPE
"; Figure 8-10. Diskette Layout (Example)
8-6
NOTES:
1. ABOVE TIMES ARE DOUBLED WHEN ClK = 1 MHz.
2. CONTACT NSC FOR EXTERNAL CLOCK/DATA
SEPARATOR CIRCUITS.
Read Timing (XTDS
I'
tpWI
I
= 0)
IPWI
IPWI
1-- -'1 1--
FDDATA
~--tCI--_"""'---
NOTES:
1. INTERNAL DATA SEPARATION MAY WORK FOR
SOME APPLICATIONS. HOWEVER FOR APPLlCA·
TIONS REQUIRING HIGH DATA RECOVERY
RELIABILITY, NSC RECOMMENDS THAT EXTER· .
NAl DATA SEPARATION BE USED.
2. FDClOCK MUST BE TIED HIGH.
Read Timing (XTDS
= 1)
Figure 8·11. Read Timing
8-7
PHYSICAL
INDEX
.. ",,,j.-1
NOMINAL
f
DATA
FielD
RECORD
26
GAP 4
PRE INDEX
320 BYTES
INDEX
ADDRESS
MARK
GAP 1
POST
INDEX
32
BYTES
ID
RECORD
#1
GAP 2
10
GAP
17
BYTES
DATA
FIelD
RECORD
#1
GAP 3
DATA
GAP
33
BYTES
10
RECORD
#2
-I
GAP
2
DATA
FIELD
RECORD
#2
ID
RECORD
#3
GAP
3
GAP
2
OJ
TRACK
ADDRESS
SECTOR
ADDRESS
ZEROES
32 fS
~
GAP
2
I
BYTE
2·129
ZEROES
CRC
BYTE 4
DATA OR
DELETED
DATA
ADDRESS
MARK
CRC
BYTE 2
Co
--I
ID
RECORD
#26
--..-
~
BYTE
4
ID
ADDRESS
MARK
DATA
FielD
RECORD
#3
I
I
128 BYTES
OF USER
DATA
I
I
130
131
CRC
BYTE 1
CRC
BYTE 2
I
,,
GAP 2
.,,,
,,
,,
,,
,,
GAP 3
1~11 BYTES~I"-6 BYTES~I
-.11 BYTE
WRITEGATE /
TURN ON FOR UPDA TE
OF NEXT DATA FIELD
Figure 8-12. Track Format (Diskette)
1-
' - WRITE TURN·OFF
FOR UPDATE, OF
PREVIOUS DATA FIELD
DATA
FIELD
RECORD
#26
GAP
4
The chip is programmed by the system software, and program control information is
transferred to the INS1771-1 over the system
bus lines. This includes control words, status
information, and all data transfers.
These
transfers for the INS1771-1 Floppy Disk Formatter/Controller are multiplexed on the system
bus along with data for other bus-oriented
devices. Interface to the system bus is shown
in figure 8-13.
The INS1771-1 provides for control of floppy
disk drives including writing of the disk format
by program control. This soft sector formatting
may be either IBM3740 compatible or a userselected, sector format. The INS1771-1 is programmed to carry out operations without continual control by the CPU, therefore freeing the
CPU for other Operations. See figure 8-13 Interface to System Bus. The interleaved clock and
data pulses are sent to a Data Separator, then
the individual pulse streams are sent to the
INS1771-1.
Selection of registers within the INS1771-1 is
shown in table 8-10 Register select lines (AO,
A 1) are used in conjunction with either an active (low) RE or WE input to select an INS1771-1
register to read from or write into, as indicated
in the table.
Figure 8-14 is a functional block diagram of the
INS1771-1 device. The INS1771-1 includes error
checking circuits and storage of status information such as sector and track location.
rc
SYSTEM
PROCESSOR
-
INSl77H
07.00
OAL7·0ALO
S
Y
S
T
E
M
CS
8
INTH
U
S
ORO
lID
Wll
Al AO
om
RESET
FDDATA
cs
lID
FOCLOCK
SEP
DATA
DATA
SEPARATOR
SEP
CLOCK
.--
Wll
WRITE
DATA
Al,AO
WR DATA
INTRO
CONTROL IN
ORO
DACK
mSK {
INTERFACE
CONTROLS
CONTROL OUT
RESET
0Figure 8-13. Interface to System Bus
Table 8-1. INS1771-1 Register Selection
A1
AO
RE
WE
Selected Register
0
0
0
1
Status Register
0
0
1
0
Command Register
0
1
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
1
0
1
1
0
0
1
8-9
Track Register
Sector Register
Data Register
FLOPPY
DISK
DRIVE
INTERFACE
ORO
INTRO
(30
(29)
(36)
(
(35)
(34)
CONTROL
(38),....-_......
(39)
t.m
CS
lIE
WE
COMPUTER
INTERFACE
CONTROL
CONTROL
PLA
CONTROL
(190 x 16)
CONTROL
DISK
INTERFACE
CONTROL
(17)
(18)
(37)
(28)
23)
CLK~
'------'
I
VOO
POWER
SUPPLIES
(40)
• +12V
VCC~+5V
VBB~-5V
VSS~ GNO
(15)
(16)
NOTE:
APPLICABLE PINOUT NUMBERS
ARE INCLUDED-WITHIN
PARENTHESES
Figure 8-14_ INS1771-1 Block Diagram
8·10
WG
T643
Wi'lff
WI'
ii'
TIIlIlI
READY
JiiI1/STEP
PH2/D1RC
PH3
311M
IliNT
HLO
HLT
There are eleven commands grouped into four
types are summarized in table 8-11. These command types are:
TYPE
GROUP
I
II
III
IV
Head Positioning
Data Write/Read Commands
Track Commands (Format Disk)
Force Interrupt
head to a particular addressed track. Step, Step
In, and Step Out are incrementa-I· step commands. Step In or Step Out cause movement to
the adjoining track in the direction specified.
Step will cause movement in the current direction to the next track.
Refer to figure 8-15 Seek Command, and also
the Block Diagram in figure 8-14 for the following discussion. Recall that the data lines will
transfer data, address and control information.
During the Seek operation the track number
which we desire is loaded into the Data
Register. The current track is stored in the
Track Register. When they are not equ~I, step
commands will be issued. When they compare
the Read/Write head has reached the desired
position, and an interrupt will then be sent to·
the CPU via the system bus.
Table 8-2. Commands Summary
Type Command
I
I
I
I
I
I
II
II
III
'III
III
IV
Bits
6
5
4
3
2
1
0
0 0
0 0
0 0
0 1
0 1
Read Command 1 0
Write Command 1 0
Read Address
1 1
Read Track
1 1
Write Track
1 1
0
0
1
0
1
0
1
u
u
u
h
h
h
h
h
V r1
V r1
r1
V r1
V r1
ro
ro
ro
ro
ro
7
Restore
Seek
Step
Step In
Step Out
Force Interrupt
1
0 m b
1 m b
E 0 0
E a1 ao
0
E
E
E
0
1
1 0
0
0
0
0
S
0
0
1 13 12 ,11
10
0
1 0 0
1
Type II Commands cauSe writing or Reading of
data in one or more sectors. Error checking is
performed and the command is terminated with
an interrupt if a valid 10 field is not found within
two revolutions of the disk. The ID field must
have a valid track number, sector number and
CRC for proper operation, otherwise the Record
Not Found status bit (bit 4) is set.
Type III commands are used to format the
diskette. They are Read Address, Read Track,
and Write Track. The Read Address command
causes a read of the next 10 field and transfers
the data to the CPU.
Type I commands are basically head positioning commands. Included are Restore, Seek,
Step, Step In, and Step Out. Restore will cause
positioning to track 00. Seek will position the
FDC
DATA_
ADDRESS
Type IV Commands may be loaded into the
command register at any time and will cause
termination of any command under execution
and an interrupt t.o be genera1ed.
+
I
I
DATA REGISTER
10
=
FOC
J
WRITE
COMPARE
3. INTERRUPT AS COMMAND ENDS
1. LOAD DATA REGISTER
2. SEND 'SEEK' COMMAND
-
1
-
TRACK REGISTER
50
=
1-
INTERRUPT
UPDATE
I
l
DATA REG.
10
=
I
TRACK REG.
=10
J
C
o
M
M
A
N
o
---
CONTROL
PLA
STEP
HEAD
REG.
Figure 8-15. Seek Command
8-11
CONTROL
PLA
I
8.60P8350. PROGR.AMMABLE
CONTROLLER
CRT
The DP8350 is' a mask-progiamn1able dedicated
CRT display 1fresh controller. It ,isa single
chip bipolar (I L technology) circuit in a 40 pin
package. The DP8350 contains a crystal controlled dot rate clock, to ease system synchronizatiofl and a complete. set of video synchronization· output signals. -' Internal maskprogrammable ROMs are used to provide a wide
range of program control: _
•
•
The 'CRT controller (CRTC) also provides program inputs,' (including 50/60 Hz control),
system clear, and characterslline rate clock.-.
The DP8350 operates on a single + 5V power
supply. Outputs and inputs are TIL compatible.
For systems where a,dot rate Ciock is already
provided, an external ,qlock input may be. used
by the CRT controller. In either case, system
sy~chronization is made possible with the use
of the buff~ed Dot Rate Clock Output.
Features
•
•
•
•
•
•
•
•
•
There are eleven character generation related
outputs for use with system character ROMs
and three on-ohip registers that provide for external loading of the.new row starting address,
cursor address,. and top-of-page. address. The
DP8350 can dir~ctly interface with up to 4K of
memory via the three on-chip registers provided
. for external loading of the new row starting address, cursor address, and top ofpagl:} address ..
•
•
A complete set of video sync outputs is
available-including cursor enable, programmable vertical blanking, programmable horizon.
tal.- blanking, programmable horizontal sync,
and programmable vertical sync.
•
•
•
.•
•
•
The DP8350' Programmable CRT Controller
allqws a wide range of program contrOl:
•
Characters per Row
Character Rows per Video Frame
Character Field (both number of
dots/character and number of scan
" lines/character)
8,12
Internal Crystal Controlled bot Rate
Oscillator
.
.Externai Dot Rate Clock Input
Buffered Dot Rate Clock Output
Timing Pulses for Character Gl:}neration
Character Memory Addressing
Scrolling Capability
Internal Cursor Addres.s Register
Internal Row Starting Address Register
Programmable- Character Field Size (up
t016 x 16)
Programmable Character/Row (5 to 110)
Programmable Character Rows/Frame (1
to 64)
Programmable Horizontal and Vertical
Sync. Outputs
Programmable Cursor Enable Output
Programmable Vertical Blanking Output
50/60 Hz Refresh Rate
Inputs and Outputs TIL Compatible
Single + 5V Power Supply
ADDRESS --.:13:::.71~_ _ _ _ _ _ _ _ _ _~
ENABLE
REGISTER
LOAO
REGISTER
SELECT A
REGISTER
SELECTB
HORIZONT AL
SYNC
LINE BUFFER
RECIRCULATE
ENABLE
VERTICAL
SYNC
LlN~
CLEAH
COllNrfR
VERTICAL
BLANKING
LINE RATE
CLOCK
CURSOR
ENABLE
LINE BUFfER
SYSTEM
CLOCK
CLEAR
CHARACTER
GENERATOR PROGRAM
LOAD VIDEO
SHIFT REGISTER
50/60 Hz
CONTROL
[JOT RATE
CLOCK
(40)
~
(17)
..
..
(6-9)
LINE COUNTER OUTPUTS
EXTERNAL
CHAR/LIlliE
V"
(20)
OND
151
N.C .
CLOCK
rc
VIDE o
INTER FACE
07-00
BI-DIRECTIONAl
BUFFER
"'I
I
I
~
- ...
...
...
S
,..
~
~
AI5-AO
..
...
I
I
I
INS8285
CHAR
GEN
OUTPUT
VIDEO
RAM
~
...
VIDEO
OUTPUT
,.
.. ...
DISPLAY
THREETERMINAL
MONITOR
CONTROL
BUS
TRI-STATE
BUFFER
...
~
•
,.
REGISTER
LOAD
LOGIC
•
...
~
b..
,
'"
"NTROLBUS
0
B
U
I
...
M
I
~
I
OP8350
XI
X2
~.~
I
I
8-13
TO
ATTRIBUTE
DECODE
HOfllZONTAL
SYNC
,.
VERTICAL
SYNC
.
CURSOR
ENABLE
8.7 INS8285 CHARACT~R G.ENERATOR
Features
The INS8285 is a 64-charac;:ter bipolar character
generator with a serial outP\Jt. The I NS8285 performs the system functions of parallel-to-serial
shifting, character address !!13!!...1 END OF CONVERSION
16 CHANNELS
MU LTIPLEXING
ANALOG
SWITCHES
INO-IN15
ANALOG
INPUTS
TRI-
STATE
OUTPUT
LATCH
BUFFER
ADDRESS
INPUTS
ADD-ADA
ADDRESS LATCH ENABLE
(32)
EXPANSION CONTROL
(37)
ADDRESS
DECODeR
(lJ)t 120~
Vee
\Iss
(19)
REf-
REf+
1211
TRISTATE
CONTROL
'IAllAlOG
-.s
Eoe
I-f-C----------!o
ii
8-15
elK
Hl.,.
,.
OA-QH
8·81T
LATCHED
OUTPUT
8.9 INS8294 3- 3AJ DIGIT DIGITAL VOLTMETER
The INS8294 is a CMOS Digital Voltmeter that
uses a pulse-modulation AID conversion technique and requires noexternc:il precision components fQroperation. The pulse-modulation
technique allows the use ofa reference voltage
that is the same polarity as the input voltage.
When operating with an isolated supply. both
positive and negative voltages may be converted.The INS8294has been designedtoprovide
addressed BCD data which are selected on demand via digit select inputs. Start Conversion
c:ind Conversion Compl!'ltesignals are also provided to ease microprocessor interfacing.
Featu~es
•
•
•
•
•
Operates from Single 5V Supply'
Converts 0 to ± 3999,Cou nts
Addressable BCD Outputs
No Exfernal Precison Components
Necessary
Easy Interface to Microprocessors
31/2 (3 3/4) DIGIT
LATCH
20
Al-A4
21
ROM
START CONV
BCD
Cl-C4
22
DIGITAL TIMING
AND CONTROL
FREQ IN
23
DO
1D1-104
FREQ OUT
III.
~. . . . . . . . . . . . .
01
OLE
COMPARATOR
TIMING
GNo
DIGITAL Vee
OVERFLOW
ROM
-.v"
L,--------t:>-------. OVERflOW
---t--t-----.
' - - _ - - - -__- - - - - - - - _ . . . . CONY COMPLETE
100
ANALOG Vee
VFlLTER
---t--t-----.
--+--+--,
C
L,-----------------.-SIGN
nl-'------------------' ~+VREF
fll.SWl
SW2
-VIN
.. -VREF
1-l---44--4>-----'----'-.--.,-----'-.---------~-
VFB __- - - - - - - - '
8-16
INSB294
INSB202
V4-V1
M
I
A4-A1
V5
A5
V6
AS
V7
A7
+VINI......t - -
-VIN .....I I - -
VB
C
R
0
B
U
AB 1......1-..-.;~-tSI GN
START
CONVERSION
S
£)o-----IoLE
\
0,
~-~----------------------~·101
o
~----~----------------------------_;..IOo
r----I CONVERSION
NOTE: This application shows free running conversion,
i.e., start conversion connected to conversion complete.
Because there is a finite (low) probability that internal
latches will be modified while the microprocessor is
accessing the data, the service program should read the
data twice and compare the two samples to insure its
validity.
8-17
COMPLETE
MEMORY
I'r--
Chapter 9
Communications
Components
Part Number/Description
-
INPUTIOUTPUT
r-M
SERIES 8000
MICROPROCESSOR
"
!J-
I
C
R
0
B
U
5
...,j
TM-
,.......,
PERIPHERAL
CONTROL
• Trademark, National Semiconductor Corporation
INS8250
Asynchronous Communications
Element (ACE)
INS8251
Programmable Communications
Interface
INS1671
ASTRO Communications Interface
.'..
"", ".j.
~
oo
Communications'
Components
3
3
c:
_.
:::J
n
Q)
_.
o
9.1 GENERAL DESCRIPTION
The Communications Components provide the
serial link to either a data communications link
or an RS·232 interface (or any other type inter·
face) for a microcomputer. The programmable
components in this chapter allow the user ex·
treme flexibility when implementing serial data
transfers.
The general operational concepts of the
devices in this section are the same; parallel
data transfers occur on the MICROBUS to/from
the interface device and the interface device
then converts and transmits the data to/from
the peripheral device interface drivers over one
or more serial 110 lines. In addition to performing the data transfer functions, the Communications Components also provide control
signals to both the system and the peripheral
interface to facilitate data transfers.
:::J
Detailed parametric information on each of the
Communications Components is contained in
appendix D, Device Data Sheets.
9.2
INTERFACING THE COMMUNICATIONS
COMPONENTS
The communications components provide the
serial interface to either a data communication
link or an RS-232 interface. The devices contained in this section are all softwareprogrammable which allow the ,user greater
flexibility when implemeting serial data
transfers.
Due to the memory-mapped 110
capability of the I NS8080A, these devices are
compatible with the MICROBUS as far as data
transfers are concerned. The remaining nonMICROBUS control signals on the communications components are for use with the
peripheral devices.
9-1
(I)
oo
3
o
"C
:::J
CD
:::J
( I)
9.3
INS8250 ASYNCHRONOUS
MUNICATIONS ELEMENT (ACE)
COM·
The INS8250
is a programmable Asynchrdnous Communications Element (ACE;:) that
functions as a serial data input/output interface. The INS8250 performs serial-to-parallel
conversion on data characters 'received from
a peripheral device or a MODEM, and parallel-toserial conversion on data characters received
,trom the CPU. An important feature available
'with the INS8250 is the availability of the CPU
to read the status of the INS8250 at any time.
Features
•
•
•
•
•
•
Adds or Deletes Bits (Start, Stop, and
Parity) to or from Serial Data Stream
Full Double Buffering
Independently Control/ed Control
Functions
Programmable Baud-Rate Generator
Complete Status Reporting Capabilities
TRI-ST ATE Bus Drivers
INTERNAL
DATA BUS
RClK
A,
A,
A2
eso
DOSTR
DOSTR
DOIS
CSOUT
XTAll
XTAL2
rn
ffi
ii'fR
iiSR
iIT!b
If!
OUll
DUT2
(30)
INS8250
07-00
01-00
MEMRnriToR
MEMWori/nw
ooSfR
tNTR
INTRPT
M
C
RESET
MR'
A'
B
U
A'
5
A2
ElA
DRIVERS
R
0
SOUT
OISTR
A'
.
TO RS·232
INTERFACE
A'
A2
ADS
XTALI
DOSTR
CS
'"
_
OISTR
I
ffi
eS1
'"
XTAL2
~
eso
9-2
3.012MHI
fNTRPT
9.4
INS8251 PROGRAMMABLE
MUNICATIONS INTERFACE
COM·
The INs8251 is a programmable Universal Syn·
chronous/Asynchronous Receiver/Transmitter
(USART) that provides·a variety of synchronous
and asynchronous serial data communication
. options.
The INS8251 performs serial·to·
parallel conversion on data characters received
from a peripheral device or a MODEM, and
parallel·to·serial conversion on data characters
received from the CPU. This device is par·
ticularly suitable for implementing BISYNC pro·
tocol.
Features
•
•
•
•
•
•
Synchronous and Asynchronous Full
Duplex Operation
Selectable Character Length
Selectable Baud Rates
Transmission Error Detection Capabilites
Double Buffering of Data
TTL Compatible
INTERNAL
DATA BUS
"·5.2)
11.28.27)
(19)
TRANSMIT
BUFFER
07- 00
RESET
(151
TxRDY
eLK
TRANSMIT
CONTROL
C/O
iiii
Wi!
'"
....!!L-TiC
RECEIVE
BUFFER
POWER
(18)
III
Ax"
.{.....!!!L.
+5V
~GNO
SUPPLY
(14)
RxRDV
Rill
SYNDET
rc
INSBZ51
INTRk
. Tx E
INTRj
RxRDV
INTR;
TxRoV
~
M
I
C
R
0
B
U
S
SERIAL
DATA OUT
07·00
RESET
-MErolR
-MEMW
-cs
AD
07·00
Txo
RESET
Rx o
-Ro
-oTR
RTS
-oSR
-eTS
-WR
-
es
C/O
-TxC
,
BAUD
RATE
GENERATOR
9·3
..
TO R8-Z32
INTERFACE
EIA
DRIVERS
-RxC
+ +
0-
SERIAL
DATA IN
9.5
INS1671 ASYNCHRONOUS/SYNCHRON·
OUS TRANSMITTER/RECEIVER
General Description
Features
The INS1671 is a programmable Asyn·
chronous/Synchronous Transmitter/Receiver
(ASTRO) chip housed in a standard,'40'pin dual·
in·line package. The chip, which is fabricated
using N·channel silicon gate MOS technology,
pr,ovides a serial data input/output interface in a
bus·structured system. The chip is capable of
full duplex operation with synchronous or ~syn·
chronous data communications systems.
•
•
The INS1671 is designed to operate on a
multiplexed, bidirectional bus with other busoriented devices. The functional configuration
of the INS1671 is programmed by the system
software via the bus and all parallel data
transfers within the system are accomplished
over the bus lines. In additon, the INS1671 contains a provision for hardwiring a unique 5-bit
identification code to a chip, thereby allowing
up to 32 INS1671 devices to be addressed via
the multiplexed bus.
•
•
•
•
•
•
•
•
•
•
INS1671 General System Configuration
Synchronous and Asynchronous Full
Duplex Operations
Synchronous Mode Capabilities
- Selectable 5·to-8·Bit Characters
- Two Contiguous SYN Characters
Provide Synchronization
- Programmable SYN and OLE
Characters Stripping
- Programmable SYN and SYN-DLE
Characters Insertion
Asynchronous Mode Capabilities
- Selectable 5-to-8·Bit Characters
- Line Break Detection
- 1-, 11/2-, or 2-Stop Bit Detection
- False Start Bit Detection
- Automatic Serial Echo Mode
DC to 1M Baud Rate
8 Selectable Clock Rates (4 Programmable)
Transmission Error Detection Capabilities
- Parity·
- Overrun
- Framing
Double Buffering of Data
8-Bit Bidirectional Bus for Data, Status,
and Control Words
All Inputs al'1d Outputs TTL Compatible
On-Line Diagnostic Mode
Reduces System Component Count
Direct Plug-In Replacement for Western
Digital FD1671
PERIPHERAL
~I
INTERFACE
/
I
IN$1671
rl
DATA IADDRESS BUS
SYSTEM
PROCESSOR
~L
I+LOCAL 32X
CLOCKS (Rl . R4)
CONTROL BUS
TRANSMITTER
SECTION
t
n
RECEIVER
SECTION
~r
.I
L
.I
9-4
J
CONTROL
SECTION
t
BUS
INTERFACE
SECTION
MEMORY
I
I
SERIAL DATA OUT
I
SERIAL DATA IN
J
I
J
I
I
(9)
TIMING & CONTROL
COMMUNICATIONS
LINK
(MODEM OR
DATA SET)
r'"
MEMORY
~
,.......,
Chapter 10
Development
Support
INPUT/OUTPUT
M
SERIES 8000
MICROPROCESSOR
'-
J-
I
C
R
0
B
U
S
PERIPHERAL
CONTROL
TM·
~
COMMUNICATIONS
~
~
* Trademark, National Semiconductor Corporation
c
Development
Support
CD
<
-
CD
o
3
"C
-en
CD
::::s
10.1 GENE.RAL DESCRIPTION
National supports its microprocessor-based
systems with a variety of software routines,
hardware development systems, applications
engineering services, and training services.
To ensure full support capability, all of the ancillary devices required are supplied by National and have been thoroughly tested in
systems produced by National. The BOBOA
family is supported by industry-standard design
kits, easy-to-use development systems, and a
full complement of cross and resident
assemblers. Various components and software
also are available to support the BOBOA family
from experimentation to final production.
Design aids for the BOBOA provide unique
development and test capabilities, including
comprehensive system control and debug, the
examination/modification of all CPU registers
and memory, and simulation of the user's
PROM, RAM, or I/O. All of the capabilities and
speed of execution of the BOBOA microprocessor chip are available for the efficient implementation of the target system.
10.2
UNIVERSAL DEVELOPMENT SYSTEM
(UDS1)
The Universal Development System (UDS1) is a
disk-oriented operating system that can be
used in the development of any NSC microprocessor-based system. UDS1 provieds all the
capabilities of the Universal Development
System, and further increases throughput and
flexibility by providing the convenient mass
storage capability of dual floppy disk drives.
See figure 10-1, pictorial of UDS1 and figure
10-2, UDS1 block diagram.
/------
_r_r+--,(/---...-;---
TTY INTERfACE
PACE MICROPROCESSOR
DEVELOPMENT SYSTEM
DUAL FLOPPY
DISK DRIVE
DISK/CRT
INTERFACE
HIGH·SPEED
PAPER TAPE fJEADER
(OPTIONAL!
TELETYPE ® (TTY)
(OPTIONAL)
CRT
Figure 10-1. Universal Development System (UDS1)
10·1
c
"C
"C
o....
lL------------------------1
DUAL DRIVES
1
1
ROM-
I
I
....IIJr~ '''''0
PRINTER
~
DISC/CRT
INTERFACE
CARD
1
'--_ _C_R_T_ _
-,.11. 1
(MONITOR)
T"
I
LO~...
PRINTER
·1 INTC~:~CE ~
1
'--.,.-_ _ _-...1.
l.
[JRAM2:12K
I
I
I
r
I
r---'----"
JfR
I
HIGH-SPEED
I
:
PAPER TAPE
READER (Or-'ionol)
1
1
I
L _______ ...l
r - - - -'----,
II
TELETYPE@
I1____
(TTY)
• _______
(Optional)
L
Ji---
I
I
l
TTY/CARD
READER INTER-/~~---~
I
I
I
L _______________________ .J
I
FACE CARD
ROM - PACTTY
Universal Development System Enclosure
Figure 10-2. UDS1 Block Diagram
The Universal ,Development System and its
associated peripherals provide a means
whereby software for an application system can
be readily developed, egited, and assembled.
The inherent features of the Universal Development System make it a flexible tool suitable for
use in developing a wide variety of microprocessor - oriented ·software applications. The
combination of a CRT and the Universal
Development System provides the minimum
equipment necessary for immediate evaluation
and development of software using UDS1.
Getting Acquainted With UDS1
This paragraph summarizes the procedures required to "turn on" and initialize UDS1, to access and use the various system programs.
1.
Turn on the power to the dual floppy
disc drives, and insert the Master
Diskette containing the system programs (refer to the UDS1 Users
Manual).
.
2.
Initialize UDS1 by setting the appropriate switches on the PACE
Development System Control Panel
(refer-fo iheUDS1 Users Manual). The
Monitor System will then ask you to
identify the available peripheral
devices by displaying the following:
The Programmers and Operators Controls
facilitate software development/debugging and
provide a convenient means of controlling UDS
operation. Complete descriptions of the Programmers and Operators Contro·ls are
presented in the Universal Development
System Users Ma.nual.
MON'ITOR
PERIPH:
The Universal Development System can be
user-expanded to include the optional
peripherals that are available to ease software
development. In additon, to ease expansion,
the basic Universal Development System is
prewired to accept additonal memory aM
peripheral interface cards.
3.
Type in the peripheral name designations. For Example; if all peripherals
are available, type in • AL. The Monitor
will then ask you to type in a command
by displaying the colon prompt symbol
(:).
10-2
4.
10.2.1.2 Disk/CRT Interface Card
Transfer control to the program you wish
to access by typing in the Execute Disc
File Command. For example, to transfer
controlto the Editor, type the following:
@EDITOR
The Diskllnterface Card provides interfacing
between the microprocessor, the dual disk
drives, and a CRT terminal. The disk input/·
output firmware, contained in ROMs .mounted
on the Disk/CRT Interface Card, provides con·
trol of the disk mechanisms, data transfer, and
a diskette formatting.
@
The Editor will then prompt for a com·
mand with a question mark (?). Editor
commands are described in the Editor
Users Manual.
5.
PDSKIO (PACE Disk I/O) is the firmware
program responsible for the communication
between the Universal Development System
and the floppy disk. It resides on the Disk/CRT
Interface Card and supports a two drive disk
system. The UDS1 TTY firmware on the
TTY/Card reader Interface Card handles data
transfer between PACE and
terminal at
transmission rates of either 300 or 1200 baud to
the EIA RS·232 I nterface and 110 baud to the
20·milliampere current loop for the Teletype
(TTY). For additional information, refer to the
Universal Development System Users Manual.
To transfer control from the Editor to
another Main Program, type in the com·
mand "@ filename." For example, to
transfer to the assembler, type the
following:
?@P8012ASM
@
Or, to return to the Monitor, type:
6.
Upon completing your work at the Con·
sole, first remove your diskette(s) from
the dual floppy disc drives, then turn off
the power to the. drives and the Control
Panel.
See Universal Development
System Users Manual and Universal
Development System Editor Users
Manual. See also Preface for a list of
related publications.
10.2.1.3 Universal Development System
The Universal Development System is a flexible
tool designed to facilitate the functions and
operations involving UDS1. The system pro·
vides an economical and convenient means of
expediting the development of both hardware
and software with UDS1.
UDS1 requires an Universal Development
System with 12K of memory and a heavy duty
power supply for its minimum configurati!?n.
Development Systems with model serial
numbers 6150 and above will accommodate the
required hardware without any additional
modifications.
10.2.1 Hardware Support
The UDS hardware components consist of dual
floppy disc drives mounted in a stand·alone
enclosure, a Disk/CRT Interface Printed Circuit
Card (containing disk input/output firmware),
and the Universal Development System. UDS1
will also support several peripherals, such as, a
Teletype (TTY), a Documation M300 Card
Reader a Centronics 702 High·Speed Printer, a
Plessey 1000' CPS Paper Tape Reader, and a
Hazeltine 1500 or equivalent CRT; refer to figure
10.2.1.4 Peripherals
Peripherals linked with the UDS1 Development
System are as follows:
• Documation M300 Card Reader
• ASR·33 Teletype (TTY)
• Plessey 1000 CPS Paper Tape Reader
• Centronics 702 High·Speed Printer
• Hazeltine 1500 Video Display Terminal
10·2.
10.2.1.1 Dual Diskette Drives
The dual disC drive enclosure contains two flop·
py disc drives and the power supplies required
by the drive electronics and mechanisms. Each
drive can accept a diskette capable of storing
over 2.5 million bits (aproximately 158,000 16·bit
words). A single·element read/write head is us· ed in each drive and straddle erase elements
provide erased areas between data tracks to en·
sure diskette interchangeability between
drives. Each diskette contains 77 tracks, ad·
dressable as 0 through X'4C, or 616 sectors, ad·
dressable as 0 through X'267.
10·3
The user has the option of using the various
peripherals by connecting the hook·up (~xtend.
ed from the peripheral) to the designated
pmipheral interface card enclosed within the
Universal Development System (refer to figure
10-:3).
10.2.2 Software Support
The main software components of the Universal
Development System are as follows:
CRT
FlOPPY DISK
PRINTER
(A2-J5) CENTRONICS PRINTER
INTERFACE CARD (OPTIONAL)
(A2-J4) FlOPPY DISK/CRT
INTERFACE CARD
(A2-J3) MEMORY STORAGE
CARD (12-16K) (OPTIONAL)
(A2-J2) MEMORY STORAGE
CARD (8-12K)
(A2-J1) MEMORY STORAGE
CARD (4-8K)
(A1-J6) MEMORY STORAGE
CARD (O-4K)
'-____
(A 1-J5) ROM MEMORY CARD
(Al-J4) CRiTTY INTERFACE
CARD
CARO READER
(A1-J3) UDS
CPU CARD
TTY
HIGH SPEED TAPE READER
(A1-J2l IMP-16
.cARD (OPTIONAL)
(A1-J1) CONTROL PANEL
INTERFACE CARD
Figure 10-3. Top Internal View of Universal Development System
10-4
Stored in ROM
10.2.2.7 UDSl Editor (EDITOR)
• Monitor System (MONITOR)
• File Input/Output Subsystem (FIOSYS)
Stored on Diskette
• File Manager (PACFM)
• Supporting System Software
10.2.2.1 Monitor System (MONITOR)
The Monitor System (MONITOR) resides on the
Read·Only Memory (ROM) card. It provides con·
trol over system configuration and linkage to
the Paper Tape Loader, Card Read Loader,
Diskette, and the Debug Subsystem.
The UDSl Editor program (EDITOR) allows a
user to read, write, correct, display, and save
source files. The Editor may be used to
generate source files in a format suitable for in·
put to the PACE assembler, other cross
assemblers, or the PACE BASIC interpreter; or
the Editor may be used to generate documenta·
tion such as lists, tables, directories, or
manuals. Refer to the UDS Editor Users Manual
for a complete description of the Editor
program.
10.2.2.8 Linkage Editor (LINKEDIT)
10.2.2.2 File Input/Output Subsystem (FIOSYS)
The File Input/Output Subsystem (FIOSYS) is a
collection of software subroutines that reside
on the Read·Only Memory (ROM) Card. These
software subroutines provide the. means of
peripheral communication required by the remainder of the Universal Development System.
The Linkage Editor (LINKEDIT) is a relocating
and linking loader program that links one or
more Load Modules (LMs) produced by the
PACE Resident Assembler
(PAC12ASM).
LlNKEDIT performs relocation and resolves ex·
ternal linkages, and writes a memory image to
the disc in a format suitable for bootstrapping
into memory for execution.
10.2.2.3 File Manager Program (PACFM)
Each LM must be in the standard format (as
described in the PACE Assembly Language
Programming Manual). Each LM and the com·
mands that control the loading process are
then input to LlNKEDIT. LMs can be input from
cards, paper tape, or from the disc itself.
The File Manager Program (PACFM) is a diskresident manager of the directories on the disk.
It gives the user control over file maintenance,
space allocation and deallocation, and file protection. The files are identified by name, with
the sector assignment handled automatically.
10.2.2.9 Diskette Diagnostic Program (PFDDIA)
10.2.2.4 Supporting System Software
The Diskette Diagnostic Program (PFDDIA) is a
complete diagnostic program for checking out
the diskettes and the disc drives. In addition,
PFDDIA initializes the diskette, the diskette's
File Directory, and system tables.
A disc-resident software package resides on a
Master Diskette and includes a number of programs provided with the Universal Development System. These programs are described.
briefly below.
10.2.2.10 UDS1 Utility Programs
The UDS1 Utility Programs consist of the
following:
• DPATCH (disc·patching utility)
• LIST (file-listing utility)
• IPCOPY (IMP to PACE copy)
• UPROM (Universal PROM Programming
Software)
•
XREF (Symbol-Listing Utility)
10.2.2.5 PACE 12K Resident Assembler
(PAC12ASM)
The PACE 12K Resident Assembler
(PAC12ASM) is a three-pass assembler, with
macro capabilities, that loads and executes on
a PACE Development System. The assembler
accepts free-format PACE assembly language
source statements as source input, assembles
the statements, and outputs a program listing
and/or a load module (LM) on paper tape or
diskette. The load module can be loaded by the
appropriate PACE loader, then exeouted, or it
may be c.onverted to a Main Program by
LlNKEDIT. The operating instructions for the
assembler are contained in the PACE Macro
Assemblers Operating Instructions. Information on the PACE assembly language, inc.luding
instructions, directives, the assignment statement, macros, and the assembler input/output
formats is contained in the PACE Assembly
Language Programming Manual.
DPATCH is used duringdebugglng to make cor·
rections to Main Program files on diskettes.
LIST is used to list any file on a diskette and
provides numerous editing and formatting op·
tions. IPCOPY is used to convert an existing
file on an IMp·16P diskette to an equivalent file
on.a PACE diskette. UPROM is used to convert
a PACE, 8060,8070, 8080, or IMP·16P LM to the
proper format for generating a PROM or ROM.
XREF is used to· generate a oross· reference
listing of tlie symbols contained in a symbolic
file on disk.
10.31NS8080A CROSS ASSEMBLER
The' UDS1 Macro Assembler Programs are.
three·pass assemblers that are loaded and ex·
10.2.2.6 Cross Assemblers for 8060, 8070, and
8080 (See Section 10.3)
10·5
Parameter driven Macros
Local Symbols
Parameters called by number
Macro Time Looping
Nested Macro Calls
Nested Macro Definitions
Recursive Macro Calls
ecuted on a Universal Development System.
The assemblers accept free-format assembly
language source statements of a target
microprocessor as source input, assemqle the
statements, and output a program listing and/or
a load module (LM).The target microprocessor
is the microprocessor that will execute the object (machine) code contained in the. load
module. For example, the UDSl Macro,
Assembler accepts 8080 assembly language
source statements. and produces a load
module. The load module may be loaded by an
appropriate loader and executed by the target
microprocessor. The load module may also be
used to program PROMS.
• Absolute Load Module Generation
• Relocatable Load Module Generation (PACE
Assembler Only)
• Assembly Time Operators( + ..:.
% &!
<' = > "EQ NE)
• Parenthesized expressions (SC/MP and
8080 Assemblers Only)
• . Diagnostic Messages .that include Error
Position in Soun;:e Line
• Wide Variety of Directives
• US.er Control over allocation of Literal Pool
and Pointer Space (PACE Assembler Only)
*/
Salient features of the PACE Assemblers are as
follows:
• DOS Capabilities (12K Assemblers Only)
• Conditional Assemblies using the following
Operators
IF Directive
ELSE Directive
ENDIF Directive
. IFC Directive
• Macros with the following features
8080A
For information on the assembly languages,
see the appropriate Assembly Language Programming Manual,. Input/Output device options
are listed in table 10-1.
The UDS1 Editor provides the normal method
used for generating and/or correcting source
programs on p,aper tape or diskette.
Microprocessor programs may be assembled by using the 8080A cross assembler
program 'in the Universal Development System (UDS1).
Program Number
Program Name
Title and Description
P8012ASM
PACE 8080 Cross-Assembl.er 12K version. An 8080 Cross-Assembler for
, the Universal Development system
requires 12K anq uses NSC
Assembler Directives.
430305394-000
Table 10-1.
Assembler Peripheral Options
'Function
Peripi1eral Options.
Control Input
"Source Input
Teletlee® or CRT/Ke~board
Teletype Paper Tape Reader
High Speed Paper Tewe Reader
Card Reader (12K and DOS only)
Dual Diskette (12K and DOS onlv!
Teletype Printer
High Speed Printer
CRT
Dual Diskette (12K ~nd DOS only)
Teletype Paper Tape Punch
Dual Diskette (12K and DOS only)
Prpgram ListingOl,ltput
Load Mod.uleOutput
".
/
' ..
"
10·6
SOURCE INPUT
SOURCE
LISTING
OUTPUT
EDITOR
SOURCE
SOU RCE
OUTPUT
INPUT
MACRO
ASSEMBLER
(EXECUTES ON
A PACE MDS)
PROGRAM
LISTING
OUTPUT
DISKETTE
112KAND
UDSONLY)
DISKETTE
OR (12K AND
UDSONlY))p.. . . . . .__. .__________. .~1
LOAD MODULE OUTPUT
DOWN
lOAD TO
80/10
SYSTEM
OR BlC 80 P
OR PROTOTYPING ,SYSTEM
Figure 10-4. Operational Sequence of the UDS1 Editor and Assemblers
10-7
10.4 PROM PROGRAMMING
10.4.1 UDS1 PROM Programmer (Peripheral)
ports, such as a port for a serial link to one or
more prototyping systems.
Because of the requirement that micropro·
cessor based equipment be. ready to operate
when power is turned on, most manufacturers
store their applications software in read-only
memory (PROMs or ROMs) so that it is always
ready for execution.
An additional advantage of the Model 7 and 9
programmers is the customer suppport provided by Data 1/0. They provide publications such
as PROM comparison charts, field bulletins
which describe improved programming techniques, and technical bulletins which also
discuss programming techniques and specific
subjects related to programmers and specific
PROMs. They also provide field service, usually
through a direct field service department.
Even in an environment where application programs are read into memory from off-line
storage for exaction, it is advantageous to put.
often·used routines in ROM or PROM so that
they are available without the overhead involved in loading them each time.
The Model 7 Programmer is a fairly basic programmer designed expressly for interfaCing to
a microprocessor through a serial interface of
up to 9600 baud. Although the Model9 is priced
higher, it can be used stand alone as well as
. connected to a microprocessor system.
A critical factor in the development of
'microprocessor software is the capability of the
user, once he has completed initial checkout,
to program PROMs with the necessary routines
and data for continued checkout and, perhaps,
initial production. Then, after his product has
been in the field for initial shakeout, he will
need to make programming tapes from these
same PROMs in order to commit his product to
masked ROMs for the additional cost savings.
By insertion of the proper personality card and
socket adapter, the PROM Programmer can be
set up to program any of the most widely used
PROMs:
National
One of the major advantages of owning a
"Universal Development System" is that program development may be done right in. the lab
without the need for outside services.
2708,2716, 1702A, 5204, 54/74S570, 54/74S387,
54/74S287, 54/74S470, 54/74S472, 54/74S572,
etc.
The Data 110 Model 7 and 9 PROM Programmers
connnected to our Universal Developmen~
System (UDS1), provide these facilities. (See
PROM Prograsmmer Software Manual and Data
1/0 Company for peipheral orderinginformation.) This gives the UDS1 user a complete, integrated, efficient capability f.or microprocessor software development. .The Model 7
and 9 programmers are directly interfaced to
UDS1 via a slave RS-232 serial I/O port.
Intel
1702A, 2704, 2708, 2716, 8748
Motorola
2,5003, 10149 ECl, 68708 (2708)
AMD
2708, 1702A
The software package to support the programmer is PROM-independent.· The Model 7 and 9
are "universal" PROM Programmers, which can
program any of the widely used PROMs with only a change of a personality card or adapter.
Generally personality cards and adapters are
available as soon as the PROM itself is
'
available.
Electronic Arrays
2708
Fairchild
93438,93448,93452,93453
The UDS1 PROM Programmer is interfaced to
UDS through an RS-232 serial port. This port is
located on a card which contains other RS-232
As other PROMs are developed, additional personality cards and socket adapters allow use
with the PROM Programmer.
10·8
The capabilities of the PROM Programmer and
the UDS1 Software package are:
•
•
•
•
•
•
•
•
•
•
•
Input of any standard NSC Load Module
(LM) from paper tape or diskette.
Input of UDS Main Program (MP) files
from diskette.
Input of binary (BI), binary complement
(BC), or BPNF PROM programming tapes.
Input or editing of hexadecimal or binary
data from system console.
PROM duplication, by performing READ
of one PROM; then PROGRAM a
duplicate PROM.
Generation of BI, BC, or BPNF ROM programming tapes from input data or PROM
data.
Test of PROM for proper erased condition.
PROM verification.
Printout of PROM data, memory data,
PROM checksum or write·buffer
checksum on console or high-speed
printer.
•
•
•
Extensive legality checks of input data.
Handling of portions of single programs
as well as of multiple programs.
Automatic setting of buffer to un·
programmed state.
Interruption of long operations other than
programming and, loading or punching of
bi nary tapes.
Programmipg of PROMs directly from
UDS1 memory.
The Data 1/0 Model 7 and 9 programmers
operate as a peripheral to National's UDS 1 as
shown in figure 10·5.
Detailed information on the Model 7 and 9
PROM Programmers and generCiI information
on PROM usage and PROM programming can
be obtained from:
Data 1/0
990 East Arques Avenue, Suite 106
Sunnyvale, California, 94086
(408)732-8246
TTY/CRT
HIGH-SPEED
PAPER TAPE
READER
UNIVERSAL
PROM
PROGRAMMER
FLOPPY
DISK
PRINTER
UNIVERSAL
ICE BOX
UDS
Figure 10-5 Universal Development System Configuration
10·9
10.4.2 UDS
Serial Link Card
This optional card available at extra cost, plugs
into a Universal Development System (UDS1).
The card has an RS-232 Port which can be used
to link the Data I/O Prom Programmer to the
Universal Development System.
See section 10.4.1
10.5
•
The BlC 80/10 is a self-contained single
board computer. It Includ'es the central
processor, system clock, RAM and ROM
memories, I/O lines, serial communications interface, and the bus logic and
drivers on a 6.75 inch, by 12.00 inch
printed circuit board. The BlC 80/10 is
plug compatible with SBC 80/10.
SERIES/80 FAMilY INCLUDING
UNIVERSAL PROTOTYPE, BOARD
(BlC905)
•
This section presents a brief description of the
devices available.
Series/80 BlC 80/11,80/12,80/14
The BlC 80/11, 80/12, and 80/14 share all
basic features and capabilities of the
BlC 80/10 but add 'jumper-selectable I/O
pins for RS-232 interface and have
greater memory capacity.
Series/80 from National Semiconductor is an
expanding new concept in OEM computer planning and design. A growing and varied family of
microcomputer products based on the National
BlC 80/10 Board level Computer, Series/80
gives the user more options for flexible design
by offering an increasing variety of memory,
supporting periphrals, and design packaging
alternatives.
•
BlC 80/204
The BlC 80/204 is a plug-for-plug replacement for the Intel SBC 80/204. It is completely bus'compatible with Series/80
boards, system peripherals, and expansion boards. The BlC 80/204 has parallel
and serial interfaces, an interval timer for
three software-controlled 16-bit counters
(two of which may be cascaded to 32
bits), and eight vectored interrupts.
The BlC 80/10 isa direct plug-for-plug replacement for the sec 80/10.
Complete system design is faCilitated by a
variety of prototype packages, board chassis
and power supplies.
10.5.3 OEM Rack Mountable Computers (RMC
80·10,80/14,80/204)
National Semiconductor rack-mountable computers (RMC 80/10, 80/14, and 80/204) can be
easily incorporated into OEM'deslgned
systems. They are complete and self contained.
The National RMC line combines a
Series/80 Board level Computer with front
panel, on/off and reset switch, power> supply,
system monitor firmware, and capacity for up to
three Series/80 expansion boards .- all in one
3-V2 inch RETMA chassis.
10.5.1 Serles/80 System Design Aids (BlC 80P
Prototype Package)
,
Prototype Package includes:
•
•
•
•
Seriesi80 BlC 80/10
BlC 80 Board level Computer
BlC 604 System Card Cage
BlC 905 Universal, Prototype Board
BlC 910 System Monitor
The BlC 905 Universal Prototype Board is
available separately as are the other Items
listed. The BlC 905'allows the user to design
and construct customized BlC-related circuits.
The BlC 910 System Monitor is supplied with
the kit in two preprogrammed MM2708 ,
EPROMs. The Monitor enables the user to load, '
execute and debug BlC 80/10-related programs, and to examine and modify any RAM
location or CPU register.
"
10.5.2 Board-level Computers
The BlC 80110, 80/11, 80/12, 80/14, and 80/204
are complete computers on a board. They use
the National 8080A microprocessor and have
on-board RAM memory and sockets for ROM/PROM memory. Expansion boards are available
to increase system memory and I/O
capabilities.
10.5.4 Memory Boards
ExpansionMOS RAM boards of 16K, 32K, 4aK,
and 64K bytes and expansion ROM, PROM,
EPROM, cards in 16K or 32K capacities are
available. All are plug-for-plug replacements for
corresponding Intel SBC mem9ry boards.
10.5.5
Input/Output and Memory Expansion
Boards '
Input and output port capacity can be expanded
with boards that provide different configurations of I/O ports and expansion memory:
10.5.6 BlC, 604 System Chassis and BlC 614
Expansion Board Cage
\
The BlC604 system Chassis and BlC614 Expansiop Board Cage provide immediate and
10-10
economical solutions for housing, interconnection, and expansion of Series/80 systems.
Stand-alone BLC 604 or 614 Board Cage holds
up to four Series/80 systems. Stand-alone BLC
604 or 614 Board Cage holds up to four
Series/80 boards in a molded chassis with interconnection backplane, bus signal terminating
networks, and connectors.
10_5_7 RMC 660 System Chassis
The RMC 660 Systems Chassis suports the
Board Level Computer and full complement of
Series/80 expansion boards. The Chassis includes board cage for eight boards. The
Chassis includes board cage for eight boards,
seven-inch standard RETMA chassis, and BLC
665 heavy duty power supply. It also includes
power-fail detect for orderly power-down sequence, and has current-limited outputs with
overvoltage protection. Power on-off and reset
switches on front panel are connected to
system bus for external system control.
See appendix C for more detailed reference
material. For list of currently available
literature, refer to the Literature Index.
10.7 TRAINING
National Semiconductor operates two
microprocessor training centers:
in Santa
Clara, Calif., and in Boston, Mass. Each training center is fully equipped and professionally
staffed to provide students with a good mix of
hardware/software theory and hands-on laboratory experience. Courses offered are Microprocessor Fundamentals, 8060 SC/MP Applications, and complex peripherals. A brochure is
available that describes the courses.
Microprocessor Fundamentals - 4- V2 Days
10_5_8 BLC 635 Power Supply
Ready-made, low cost power for BLC 80/10,11,
12, 14, and 204 is provided by the BLC 635
power supply. It suppor,ts most configurations
of BLC memory, and I/O expansion boards. DC
power is provided on mating cables for direct
connection to BLC 604 System Card Cage. The
BLC 635 senses AC power failure and
generates a TTL signal for orderly system
power shutdown. It has"current-limited outputs
with over-voltage protection, and 100, 115, 200,
230, VAC input voltage; 50/60 Hz input frequ.ency.
A course intended for engineers, senior techniCians, managers, and others who may have little
or no experience with microprocessors or computers. The Fundamentals course provides a
sound introduction to microprocessors and
microcomputers and their potential applications. The course also provides a comparison
of various types of microprocessors, and provides an insight on their appropriate applications. Extensive lab sessions allow the participant to become familiar with use of Development Systems and microprocessor programming.
10_5.9 BLC 665 Heavy Duty Power Supply
OUTLINE
The BLC 665 supplies approximately twice the
rated current of the BLC 635. The BLC 665 will
power a fully loaded BLC 80110 and most combinations of seven additional expansion
boards.
See National Semiconductor publications:
• Series/80 BLC 80P Prototyping Package
Users Manual
• BLC 80/10 Hardware Reference Manual
• Series/80 Microcomputer System
Brochure
Monday - Getting Started
1. Microprocessor Concepts and Terminology
2. Review of Digital Logic, Boolean Algebra,
and Number Systems
3. Microprocessor Architecture, Instructions, Addressing
4. Introduction to Programming - Flowchart
ting, Coding
5. Lab - Operating a Microcomputer Load
and run a simple program
10.6 PUBLICATIONS
PUblications are available covering the various
devices manufactured by National Semiconductor. The available literature is grouped in
the following categories:
•
•
•
•
•
•
•
•
•
•
Tuesday - Learning the Tools
1. Assembly Language Instruction Set
2. Microprocessor Development Systems
3. Software Development Tools - Editors,
Assemblers
4. Lab - Using the Development System
Literature Index
Handbooks
Manuals
Linear ApplicationS, Vol I and II
Databooks
Guides
Product Selection Guides
Briefs
Individual Application Notes
.Individual Data Sheets
Wednesday - Getting Involved
.
1. Additional Addressing Modes
2. Programming Techniques
3. Software Development Tools - Loaders
4. Lab - Programming with the Development
System
10-11
Thursday - Putting it all Together
1. Microprocessor System Design Con~
siderations
2. Microprocessor Applications
3. The Floppy Disk Universal Development
System
4. High Leyel Languages
5. Lab - Develop a Moderately Difficult Program
. 7. Programmable Interface Tin'le'r -INS8253
. 8.DMA Controller - INS8257
. .
Day 3 - Floppy Disk Drive and CRT Termin.al
Design
1. i=loppy Disk Drive Overview
2. Floppy Disk Controlle'r/Formatter
-INS1771-1'
.
3. Keyboard Encoder- I NS8244
4. Programmable CRT Controlier - DP8350
. 5... Character Generator - INS8285/DP8678
6. Example System: CRT Terminal
.
Friday (Morning only) - Wrapping it up
1. Review, Questions and Answer Session
2. Survey of Microprocessors and I Appropriate Applications
3. Lab - Complete Programming Exercises
10.8
NATIONAL'S MICROPROCESSOR
USERS GROUP
National Semiconductor sponsors a
microprocessor users group and a monthly
newsletter, both calied COMPUTE, as .a service
to users and potential users of National's
microprocessors, and for anyone else. who is In·
terested in what is going on in the micro·
processor industry. This provides a forum for
members to exchange ideas, opinions, software, and products. National maintains the
group's software library as a service to COM·
PUTE members. Products, services, and soff·
ware. offered for sale by COMPUTE members
will often be published in the newsletter.
.
Complex Peripheral Chips for Microprocessors
.
-3 Days
This course is intended for the engineer with
microprocessor system design experience,
who needs applications information on the
many complex peripheral chips available for
microprocessors. Although oriented towards
the 8080A it is appropriate for ttlose using any
of the popular microprocessors (8085, Z80,
etc.). The MICROBUS™ is explained In detail,
followed by sessions on interfacing the various
support chips to the MICROBUsTM. This intensive course covers some 20.complex support
chips, so to keep the class ~easonably short,
lab sessions have not been included. This
course can save you weeks of time and stimulate new microprocessor ideas.
.
The newsletter Is packed with articles on
microprocessors and peripherals. In addition,
therel!-re:
• Product Announcements
• Application Notes
• Construction Projects
• Programming Hints
• Programming Aids
• Microprocessor Class Schedules
• Consultant Lists
• Announcements of Coming Events
• Literature Reviews
• Data Sheets
• Letters to the Editor
• Library Program Listings
• Contents
• . Services
• Classified Ads
OUTLINE
Day 1 - The MICROBUSTM, Paraliel Ports and
Other I/O Devices
1. Definition
2. Description - Data, Address, and Control
Bus
3. Interface - Implementing the MICROBUSTM
.4. Octal Latch - INS82C06/MM74CS74
5. 8 Bit I/O Port - INS8212
.
6. Bit Programmable Peripheral Interface
-I NS8254
7. Programmable Peripheral Interface
-INS8255
8. AID Converter - INS8292
9. Programmable Interrupt Controller
-I NS8259 .
.
'.
.
In summary, everything you need to know about
microprocessors. .
.
The software library Contains utility programs,
math routines, I/O routines, games,
assemblers, compilers, translators, etc. Most
of the library program listings are free; sOL/rce
paper tapes are available for a nominal charge.
Day 2 - Communications: Concepts and New
Devices
1. Serial Codes
2. 20ma Current Loop and RS232 Interfaces
3. Modems and Line Protocol (BiSYNC,
SDLC)
. .
4. Programmable Communications Interface - INS8251/1 NS826111 NS2651 '
5. Multi-protocol Com'munications Controlier - INS8274/1NS2652
6. Asynchronous Control Element - INS8250
National Semiconductor is not responsible for
software_ in the software library, and will not
. provide applications support for that software.
Descriptions published are those of t.he contributor, and National cannot guarantee their
accuracy or the applic~bility of the software.
Any product, service, or software offered for
10-12
sale in the newsletter is the responsibility of
the person or company who offers it. Publication in COMPUTE does not constitute endorsement by National Semiconductor. Of course,
any products or services offered for sale by National Semiconductor in the newsletter, will
carry National's normal warranty and applications support.
10.10
MICRO+ PROGRAM (QUALITY CON·
TROL AND TESTING PROCESS)
The MICRO + Program from National Semiconductor is a specially designed quality control
and testing process that ensures our micro-'
processor parts meet extraordinary standards
of quality and reliability. The MICRO+ Program serves users who cannot perform incoming inspection of microprocessors or who need
significantly better quality and higher reliability
levels than normally required.
You are invited to join COMPUTE, National's
microprocessor users group.
A lifetime
membership to COMPUTE will cost you only
$15.00 (DLR 15.00 for Australia) - a real bargain!
Users who specify MICRO+ processed parts
will find that the program offers the following
benefits:
10.9 TECHNICAL SUPPORT PROGRAMS
•
Reduces the cost of reworking assembly
boards
• Reduces field failures
• Simplifies system checkout
• Reduces equipment downtime
• Eliminates the need for, and thus the added cost of, independeht testing
laboratories
• Reduces the need for excess inventories
due to yield loss incurred as a resuit of
processing performed at independent
testing laboratories
• Eliminates incoming electrical inspection
To provide a high quality level to all outgoing
parts, an Acceptable Quality Level (AQL) is
established. The AQL is the percentage of faulty devices that escape detection during inspection and testing at the manufacturer's facility;
with the MICRO+ Program, the AQL is reduced
to such an extent that the customer can
eliminate incoming inspection and test.
National Semiconductor has the strongest onthe-scene technical support team· in the U.S
and abroad - of any semiconductor manufac·
turer. Our large network of independent sales
representatives and franchised distributors
is backed by our Field Application Engineers
(FAE's) and microprocessor applications
engineers. The FAE's are available domestically and internationally to offer on-site technical
assistance, and are equipped technically to
help analyze your application, translate your
needs into a viable hardware/software configuration, and then follow it through to system delivery. The microprocessor applications
engineers are National's home-base technicalsupport specialists who support the FAE's in
the field, and who help you use your
microprocessor most effectively; they are
always available to answer specific technical
questions regarding the use of National's
microprocessor and peripheral components.
10-13
r"r-
SERIES 8000
MICROPROCESSOR
~
r
,....
MEMORY
,.....
INPUT/OUTPUT
Chapter 11
Programming
M
I
C
R
0
B
U
S
TM"
,.....
PERIPHERAL
CONtROL
COMMUNICATIONS
~
~
• Trademark, National Semiconductor Corporation
."
'"'I
Programming
o
CC
'"'I
Q)
3
3
:::J
(Q
11.1
INS8080A INSTRUCTION SET
Five different types of instructions are included
in the 8080 instruction set. These are:
TWO-Byte Instructions
Data Transfer Group - moves data between
registers or between memory and registers.
Arithmetic Group Adds, subtracts,
increments or decrements data in registers
or in memory.
1....0...!,7.L1--L--''--L-.L-.£-.. .1.:..0~01
B t T
ye wo
Oata or
I..0-"7. I. --J'--........-'-~--"_L~-'OU
I I Address
Op Code
Three-Byte Instructions
• Logical Group - AND, OR, EXCLUSIVE OR,
compare, rotate, or complement data in
registers or memory.
• Branch Group - Conditional and unconditional jump instructions, subroutine call
instructions and return instructions.
Byte One
1071
1001 Op Code
Byte Two
1071
1001 Oata
Byte Three
1071
or
• Stack, 1/0 and Machine Control Group - 1/0,
stack maintenance, and flag control.
11.1.1
Byte One
1001 Address
Instruction and Data Formats
11.1_2
Memory for the 8080 is organized into 8-bit
groups called bytes. Each byte has a unique
16-bit binary address corresponding to its
sequential position in memory.
Addressing Modes
The 8080 machine code is stored sequentially
in memory. Multi-byte data is stored in successive memory locations, starting with the
least significant byte, and ending with the most
significant byte. The 8080 has four different
modes for addressing data stored in memory or
in registers:
The 8080 can directly address up to 65,536
bytes of memory, which may consist of both
read-only memory (ROM) elements and randomaccess memory (RAM) elements (read/write
memory). Data in the 8080 is sorted in the form
of 8-bit binary bytes:
• Direct
-Bytes 2 and 3 of the instruction
contain the exact memory
address of the data item. Byte 2
contains the low-order bits of the
address. Byte 3 contains the
high-order bits.
• Register
-The instruction specifies the
register or register-pair in which
the data is located.
• Register
Indirect
-The instruction specifies a
register-pair which contains the
memory address where the data
is located. The high:order bits
of the address are in the first
register of the pair, the low-order
bits are in the second.
DATA WORD
1071061051041031021011001
MSB
LSB
In the 8080, the Least Significant Bit (LSB), is
called BIT 0, and the Most Significant Bit (MSB),
is referred to as BIT 7 (of an 8-bit byte).
The 8080 instructions are one, two or three
bytes in length. Multiple byte instructions must
be stored in successive memory locations. The
address of the first byte is always used as the
address of the instruction. The exact instruction format will depend on the particular operation to be executed.
. Single Byte Instructions
• Immediate -The instruction contains the data
itself. This is either an 8-bit
quantity or a 16-bit quantity (least
significant byte first, mo'st significant byte second).
10...!,7.L1--L--I.--'
..
--''--L-.L10-,,-,01 Op Code
11-1
011
wise it is reset. This ~Iag is affected
by single preCision additions, subtractions, increments, decrements,
comparisons, and logical operations,
but is principally used with additions
and increments preceding a DAA
(Decimal Adjust Accumulator)
instruction.
Unless' otherwise directed by an interrupt or
branch 'instruction, the execution of instructions ,proceeds through consecutively increasJflg memory locations. A branch instruction can
··change the address of the next instruction to be
executed in either of two ways. They are:
• Direct
• Register
Indirect
-The brancn instruction contains
the addresa of the next instruction to be executed. Except for
the "RST" instruction, byte 2
contains the low-order address
and byte 3' the high-order
address.
11.1.4
Figure 11~1 indicates the format used for
describing each instruction. The symbols utilized are listed in table 11·1. (See page 11·3.)
11.1.5
-The branch instruction indicates
that the HL register pair contains
the address of the next instruction to. be executed. The highorder bits of the address are in
the H register, the low-order bits
in the L register.
Data Transfer Group
. This group of instructions transfers data between registers or between registers and
memory. Data may be transferred one byte at a
time or two bytes at a time, depending on
whether a single register or register pair is
specified by the instruction. Condition'flags are
not affected by any instruction in this group.
The RST instruction is a special one-byte call
instruction (usually used during interrupt
sequences). R$T includes a three-biffield; program control is transferred to the instruction
whpse (iddress is eight times the contents of
this three-bit field.
11.1.3
Presentation Format
MOVE REGISTER
MOV
10
Condition Flags
!
r 1,
1 I
r2
S
D
(r1) - (r2)
The content of register r2 is moved to. register
r,1.
'
There are five condition flags associated with,
the execution of the 8080 instructions. They are
Zero, Sign, Parity, Carry, and Auxi.liary Carry.
Each is represented by a 1·bit register in the
CPU. A flag is "reset:' by forcing the bit to O.
Unless otherWise indicated, when an .instruction affects a flag" it does so in the following
manner:
Cycles:
States:
Addressing:
Flags:
1
5
register
none
MOVE FROM MEMORY
Zero: If the result of an instruction has the
value 0, this flag is set; otherwise It
is reset.
MOV
Sign: If the, most Significant bit of the
result of the operation has the value
of 1, this flag is set; otherwise it is
.
reset.
(r) - ((H) (L))"
r,
M
D
S
TI>1e content of the memory location, whose
address is in registers Hand L, is moved to
register r.
Parity; If the modulo 2 sum of the bits of .
the. result of,the operation is 0, (Le.,
if the result has even parity), this
flag is set; otherwise (i.e., if the
result has odd parity) it is reset.
Cycles:
States:
Addressing:
Flags:
Carry: If the instruction resulted in a carry
,(from addition), or a borrow (from
subtraction or comparison) out of
the high-order bit, this flag is set;
otherwise it is reset.
2
7
register indirect
none
MOVE TO MEMORY
a
MOV
M'
,
S
Auxiliary If the instruction caused a carry out
Carry: of bit 3 and inlo bit 4 of the resulting
value, the auxiliary carry is set; 'other-
! '
((H) (L)) - (r)
,11-2
}
}
SUBTRACT REGISTER
SUB
OPERATION
MNEMONIC
}
OP CODE
(A) - (A) - (r)
}
SYMBOLIC
REPRESENTATION
The content of register r is subtracted from the
content of the accumulator. The result is placed
in the accumulator. '
}
DESCRIPTION
}
FLAGS AFFECTED
BY THE INSTRUCnON
°
11,0,0,
Cycles:
States:
Addressing:
Flags:
S
4
register
Z,S,P,CY,AC
Figure 11-1. Presentation Format
Table 11-1. Symbols and Notations
Symbol and
Notation
A
B
C
D
E
H
l
M
D,S
Meaning
Symbol and
Notation
byte 2
Register A (Accumulator)
Register B
Register C
Register D
Register E
Register H
Register l
Memory Byte (Address in Hl
register pair)
The bit pattern designating
destination or source. (D =
Destination, S = Source):
!2.2LS O!;!signation
000
001
010
} Reglste,
011
100
101
M Memory
110
A Accumulator
111
byte 3
port
r,r1,r2
PC
SP
~
()
11-3
'Meaning
The second byte of the
instruction.
The third byte of the
instruction.
8-bit address of an 1.0 device.
One of the registers A,B,C,
D,E,H,l
16-bit program counter
register (PCH and PCl are
used to refer to the high-order
and low-order 8 bits,
respectively.)
16-bit stack pointer register
(SPH and SPl are used to
refer to the high-order and
low-order 8 bits, respectively).
'Thecontents of the memory
location or registers enclosed
in, the parentheses
"Is replaced by"
Table 11-1 Symbols and Notations (Continued)
Meaning
Symbol and
Notation
II
4/V
Symbol and
Notation
logical AND
Exclusive OR
Inclusive OR
Addition
Twos complement subtraction
Multiplication
"Exchange"
The ones complement (for example, (A))
The restart number 0 through
7
The binary representation 000
through 111 for restart number
o through 7, respectively
"Not affected"
"Reset"
"Set"
Unknown
Flags affected according to
Standard Rules, except as
noted
The bit pattern designating a
register pair.
The mnemonic designating a
reg'ister pair.
+
n
N
o
1
x
RP
rp
data 16
16 bit data quantity.
C
Bit combination in branch
instruction
o
[
H
SP
PSW
11
C
Flag
Condition
13$113
13131
NZ-Not zero
Z-zero
1130
(Z=13)
(Z= 1)
(CY=0)
(Cy= 1)
(P5Q)
101
(P= 1)
1116
(8=0)
(S,;, 1)
-------------
0116
$111.
111
addr
addr H
addr l
. data
data H
datal
rH
rm
B
Meaning
B-Pair (B and C)
D-Pair (0 and E)
H-Pair (H and l)
SP (Stack Pointer
Register)
PSW (Processor
Status Word)
Consisting of
Accumulator and
Flag Register.
Note: Mnemonic PSW generates
11 for certain instructions,
therefore SP is invalid for
them.
11-4
P=o
NC-No carry
C-carry
PO-parity
odd
PE-parity
even
P-plus
M-minus
16-bit address quantity
High-order address byte
low-order address byte
8-bit data quantity
High-order data byte
low-order data byte
The high-order register of a
deSignated register pair
The low-order register of a
designated pair
Bit m of the register r (right to
left,J3 through 7)
The content of register r is moved to the
memory location whose address is in registers
Hand L.
Cycles:
States:
Addressing:
. Flags:
.
high-order data
"
r,
Byte 1
data
Byte 2
Cycles:
States:
Addressing:
Flags:
3
fie
00
01
10
(Register)
B-Pair (B and C)
D-Pair (D and E) .
H-Pair (H and l)
,SP (Stack POinter)
11
(r) - data
immediate
none
lDA
addr
2
7
immediate
none
Byte 1
low-order addr
MOVE TO MEMORY IMMEDIATE
MVI
10
lOAD ACCUMULATOR DIRECT
The contents of byte 2 of the instruction is
placed in register r.
Cycles:
States:
Addressing:
Flags:
Byte 3
I
These instructions are used to load a specific
register pair with a 16-bit operand. The operand
immediately follows the instruction in the form
of two B-bit bytes.
data
D
I
(rH) - dataH
(rL) - datal
2
7
register indirect
none
MOVE IMMEDIATE
MVI
,I
M,
DATA
, 0 11
,0
I
Byte 2
high-order addr
~
'---1..--1..--1------,----,---,-'~
Byte 1
Byte 3
(A) - (addrH addrd
This instruction will load the accumulator with
a data byte from memory, specified by the two
bytes which immediately follow the instruction.
((H) (l)) - data
Cycles:
States:
Addressing:
Flags:
The content of byte 20f the instruction is
moved to the memory location whose address
is in registers Hand L.
.
Cycles:
States:
Addressing:
Flags:
4
13
Direct
none
STORE ACCUMULATOR DIRECT
3
10
STA
immediate/register indirect
none
addr
o
0
, o1
Byte 1
,J
Byte 2
L-h~:9_h_-L~r_d_eL~_ad~~_r~__L'.~
Byte 3
lOAD REGISTER PAIR IMMEDIATE
LXI
rp,
I
I tI
0 , 0
'I
data 16
R
low-order data
0 , 0 ,0 ,11
low-order addr
Byte 1
Byte 2
(addrH addrl) - (A)
11-5
l1li
The contents of the acCumulator will be.stored
in memory, at a location specified by. th.e two
, bytes which immediately follow the instruction.
Addressing:
Flags:
.
direct
none
LOAD ACCUMULATOR INDIRECT
Cycles:
States:
Addressing:
Flags:
4
13
.direct
none·
LDAX rp
o
LOAD HAND L REGISTERS DIRECT·
\
LHLD
(A) - ((rp»
addr
The content of the memory location, whose
address is in the register pair rp, is moved to
register A. Note: only register pairs B (registers
Band C) or D (registers D and E) may be
specified.
Byte 1
Byte 2
high-order addr .
I
I
1
Cycles:
States:
Addressing:
Flags:
.
STORE H'
'
B-Pair
D-Pajr
STORE ACCUMULATOR INDIRECT
STAX
I
0
5
16
direct
none
I
rp
0 1 R, P 1 0
0
I
0 I
((rp» - (A)
The' content of register A is moved to the
memory location whose address is in the
register pair rp. Note: 'only register< pairs B
(registers Band C) or D (registers D and.E) may
be specified.
AJiiD L..DIRECT
SHLD
register indirect
none
RP
00
01
This instruction enables the Hand L Registers
(H-pair) to be loaded with two consecutive
bytes from memory. Register H is loaded by the
second memory byte; L is loaded with 1he first
memory byte, (which is specified by the two
bytes that immediately follow the instruction).
";:
7
Byte 3
I
(L) - (addrH addru
(H) - (addrH addrL +'1)
Cycles:
States:
Addressing:
Flags:
2
addr
Cycles:
States:
Addressing: .
Flags:
2
7
register indirect
none
EXCHANGE HAND L WITH D AND E
low·order addr
XCHG
11 1
high-order addr
.
I
oj
I
I'
(addrH addru - (L)
(addrH addrL + 1) - (H)
o
(H) - (D)
(L) - (E)
The content of registerL is moved to the
memory location whose address is specified in
byte 2 and byte 3. The conteht of register H is
mo¥e.d to the succeeding memory location.
Cycles:
States:
o
The contents of registers .Hand L are exchanged with the contents of registers D and E.
Cycles:
1
States:
4
Addressing: register
Flags:
none
5
16
11-6
11.1.6
Arithmetic Group
data
, I
This group of instructions performs arithmetic
operations on data in registers and memory.
Unless indicated otherwise, all instructions in
this group affect the Zero, Sign, Parity, Carry,
and Auxiliary Carry flags according to the standard rules. All Subtraction operations are performed using two's complement arithmetic.
The carry flag is set to indicate that a borrow
occurred and is cleared to indicate that no
borrow occurred.
Byte 2
(A) - (A) + data
The content of the second byte of the instruc·
tion is added to the content of the accumulator.
The result is placed in the accumulator.
Cycles:
States:
Addressing:
Flags:
The following ADD Instructions (ADD, ADI,
ADC, ACI) perform addition of a data byte or
register with the accumulator, the result of the
operation being placed in the accumulator.
2
7
immediate
Z,S,P,CY,AC
ADD REGISTER WITH CARRY
ADC
ADD REGISTER
S
ADD
(A) - (A) + (r) + (CY)
The content of register r and the content of the
carry bit are added to the content of the
accumulator. The result is placed in the
accumulator.
(A) - (A) + (r)
The content of register r is added to the content
of the accumulator. The result is placed in the
accu mu lator.
Cycles:
States:
Addressing:
Flags:
4
Cycles:
States:
Addressing:
Flags:
register
Z,S,P,CY,AC
ADD MEMORY WITH CARRY
1
ADD
M
M
Ct:0 , 0
1
I
(A) -
register
Z,S,P,CY,AC
ADC
ADD MEMORY
I
1
4
0
I
0
0
0
I
(A) -
The content of the memory location whose
address is contained in the Hand L registers is
added to the content of the accumulator. The
result is placed in the accumulator.
2
I
data
0
0
l1li
+ (CY)
2
7
register indirect
Z,S,P,CY,AC
ADD IMMEDIATE WITH CARRY
ACI
I 1
ADD IMMEDIATE
~,O
((H) (L))
Cycles:
States:
Addressing:
Flags:
7
register indirect
Z,S,P,CY,AC
ADI
+
The content of the memory location whose
address is contained in the Hand L registers
and the content of the CY flag are added to the
accumulator. The result is placed in the
accumulator.
(A) + ((H) (L))
Cycles:
States:
Addressing:
Flags:
(A)
0
data
I
II
Byte 1
0
0
1
data
(A) - (A) + data + (CY)
11·7
0
I
Byte 1
Byte 2
The content of the second byte of the instruction and the content of the CYflag are added to
the contents of the accumulator_ The result is
placed in the accumulator.
(A) - (A) - data
Cycles:
States:
Addressing:
Flags:
The content of the second byte of the instruction is subtracted from the content of the
accumulator. The result is placed in the
accumulator.
data
2
7
immediate
Z,S,P,CY,AC
Subtract Instructions (SUB, SUI, SBB, SB!) subtract a data byte or register from the contents of
the accumulator and place the result in the
accumulator. All subtraction operations are performed using two's complement arithmetic and
either set the carry flag (CY) to indicate a borrow or clear it to indicate no borrow.
Cycles:
States:
Addressing:
Flags:
Byte 2
2
7
immediate
Z,S,P,CY,AC
SUBTRACT REGISTER WITH BORROW
r
SBB
SUBTRACT REGISTER
SUB
II 1
°° °
S
(A) - (A) - (r) - (CY)
The content of register r and the content of the CY
flag are both subtracted from the accumulator. The
result .is placed in the accumulator.
(A) - (A) - (r)
The content of register r is subtracted from the
content of the accumulator. The result is placed
in the accumulator.
Cycles:
States:
Addressing:
Flags:
Cycles:
States:
Addressing:
Flags:
1
2
7
register indirect
Z,S,P,CY,AC
4
register
Z,S,P,CY,AC
SUBTRACT MEMORY WITH BORROW
SBB
M
SUBTRACT MEMORY
SUB
M
(A) - (A) - ((H) (L)) - (CY)
°
The content of the memory location whose address
is contained in the Hand L registers and the content
of the CY flags are both subtracted. from the accumulator. The result is placed in the accumulator.
(A) - (A) ~ ((H) (L))
The content of the memory iocation -.yhose
address is contained in the Hand L registers is
subtracted from the content of the accumulator. The result is placed in the
accumulator.
Cycles:
States:
Addressing:
Flags:
Cycles:
States:
Addressing:
Flags:
2
7
SUBTRACT IMMEDIATE WITH BORROW
register indirect
Z,S,P,CY,AC
SBI
data
Byte 1
°
SUBTRACT IMMEDIATE
SUI
2
7
register indirect
Z,S,P,CY,AC,
data
data
L--L..-,L_0-..L.---,_O--,-__",---,i_O---,·1
Byte 1
(A) - (A) - data - (CY)
11-8
Byte 2
The contents of the second byte of the instruction
and the contents of the CY flag are both subtracted
from the accumulator. The result is placed in the accumulator.
DECREMENT REGISTER
OCR
o
2
Cycles:
States:
Addressing:
Flags:
7
register indirect
Z,S,P,CY,AC
(r) -
INR
Cycles:
States:
Addressing:
flags:
o
+
1
5
register
Z,S,P,AC
DECREMENT MEMORY
The content of register r is incremented by one.
Note: All condition flags except CY are affected.
Cycles:
States:
Addressing:
Flags:
(r) -
The content of register r is decremented by
one. Note: All condition flags except CY are
affected.
INCREMENT REGISTER
(r) - (r)
·r
OCR
M
1
5
register
Z,S,P,AC
«H) (L» - «H) (L» - 1
INCREMENT MEMORY
INR
The content of the memory location whose address is contained In the Hand L registers is
decremented by one. Note: All conditions flags
except CY are affected.
M
«H) (L» - «H) (L»
Cycles:
States:
Addressing:
Flags:
+1
The content of the memory location whose address
is contained in the Hand L registers is incremented
by one. Note: All condition flags except CY are affected.
Cycles:
States:
Addressing:
Flags:
register indirect
Z,S;P,AC
DECREMENT REGISTER PAIR
DCX
rp
3
10
register indirect
Z,S,P,AC
(rH q) - (rH rL) - 1
INCREMENT REGISTER PAIR
INX
3
10
The content of the register pair rp is
,decremented by one, Note: No condition flags
are affected.
rp
(rH rL) - (rH rL)
Cycles:
States:
Addressing:
Flags:
+1
1
5
register
none
ADD REGISTER PAIR TO HAND L
The content of the register pair rp is
incremented by one. Note: No condition flags
are affected.
Cycles:
States:
Addressing:
Flags:
DAD
rp
1
5
register
none
. (H) (L) -,(H) (L)
11-9
+
(rh) (rl)
l1li
The contents of a speCific ,register pair (rp) will
be added to the, Hand L-Registers (H-Pair). The
result is placed in the register pair Hand L.
Note: Only the CY flag is affected. It is set if
there is a carry out of the double precision add;
otherwise it is reset
Cycles:
States:
Addressing:
FlagS:
, with the content of the accumulator. The, result
is placed in the accumulator. The CY flag is
cleared.
Cycles:
States:
Addressing:
Flags:
3
10
register
CY
1
4
register
Z,S,P,CY,AC
AND MEMORY
ANA
M
DECIMAL ADJUST ACCUMULATOR
DAA
--'-I~0..LI_01L-1
1L-1-L'_0
o
(A) - (A) A «Irl) (L))
0
The contents of the memory location whose address is contained in the Hand L registers is
logically AND'ed with the content of the
accumulator. The result is placed in the
accumulator. The CY flag is cleared.
The eight-bit number in the accumulator is adjusted to form two four-bit BCD (Binary-CodedDeCimal) digits by the following process:
1. If the value of the least significant 4-bits of
the accumulator is greater than 9 or if the
AC flag is set, 6 is added to the accumulator.
2.
Cycles:
States:
Addressing:
Flags:
If the value of the most significant 4-bits of
the accumulator is now greater than 9, or if
the CY flag is set, 6 is added to the most
significant 4-bits of the accumulator.
2
7
register indirect
Z,S,P,CY,AC
AND IMMEDIATE
ANI
Cycles:
States:
Flags:
11.1.7
Logical Group .'
data
The content of the second byte of the instruction is logically AND'ed with the contents of the
accumulator. The result Is placed in the accumulator. The CY flag is cleared.
Cycles:
States:
Addressing:
Flags:
ANA
o
2
7
immediate
Z,S,P,CY,AC
For exclusive OR Instructions (XRA, XRI), a
register, data byte or memory is exclusive OR'd with the contents of the accumulator,
with the result being placed in the accumulator.
AND REGISTER
I
Byte 2
(A) - (A) A data
For AND Instructions (ANA, ANI): A register,
data byte or memory byte may be AND'ed with
the contentsof the accumulator with the results
being placed into the accumulator.
0
data
3
10
Z,S,P,CY,AC
The logical Group of instructions performs
logical (Boolean) operations on data in registers
or memory and on condition flags. These
'instructions are: AND, OR, XOR, Compare,
Rotate, and Complement. Unless otherwise
indicated the Zero (Z), Sign (S), Parity (P), Auxiliary Carry (AC) and Carry (CY) flags will be
affected according to the standard rules.
11,
0]
---L.-....L1
.L....'
EXCLUSIVE OR REGISTER
0
S
XRA
11
(A) - (A) A (r)
The content of the register r is logically AND'ed
I
0
o
I
(A) - (A) -V- (r)
11·10
s
'I
The content of register r is exclusive - OR'd
with the content of the accumulator. The result
is placed in the accumulator. The CY and AC
flags are cleared.
The content of register r is inclusive - OR'd
with the content of the accumulator. The result
is placed in the accumulator. The CY and AC
flags are cleared.
Cycles:
States:
Addressing:
Flags: .
1
4
register
Z,S,P,CY,AC
Cycles:
States:
Addressing:
Flags:
EXCLUSIVE OR MEMORY
OR MEMORY
XRA
ORA
M
1
4
register
Z,S,P,CY,AC
M
o
o
(A) - (A) V ((H) (L))
The content of the memory location whose
address is contained in the Hand L registers is
OR'd with the content of the accumulator. The
result is placed in the accumulator. The CY and
AC flags are cleared.
.
(A) - (A) ¥ ((H) (L))
The content. of the memory location whose
address is contained in the Hand L registers is
exclusive - OR'd with the content of the accu·
mulator. The result is placed in the accumu·
lator. The CY and AC flags are cleared.
Cycles:
States:
Addressing:
Flags:
2
Cycles:
States:
Addressing:
Flags:
I
7
register indirect
Z,S,P,CY,AC
2
7
register indirect
Z,S,P,CY,AC
OR IMMEDIATE
EXCLU.SIVE OR IMMEDIATE
ORI
XRI
11
data
data
o
01
1
Byte 1
Byte 1
data
data
(A) - (A) V data
Byte 2
The content of the second byte of the instruction IS inclusive - OR'd with the'content of the
accumulator. The result is placed in the accumulator. The CY and AC flags are cleared.
(A) - (A) ¥- data
The content Of the second byte of the instruc·
tion is exclusive - OR'd with the content of the
accumulator. The result is placed in the accumulator. The CY and AC flags are cleared.
Cycles:
States:
Addressing:
Flags:
Cycles:
States:
Addressing:
Flags:
2
7
immediate
Z,S,P,CY,AC
2
7
immediate
Z,S,P,CY,AC
The Compare instructions (CM?, CPI) allow a
register, data 'byte or memory location to be
compared with the accumulator. Results of the
operation are reflected by the condition flags,
and the contents of the accumulator will temain
unchanged.
The OR Instructions (ORA, ORI) cause a
register, data byte or memory location to be
OR'd with the contents of the accumulator; the
result being placed in the accumulator.
OR REGISTER
COMPARE REGISTER
ORA
CMP
o
Byte 2
S
S
(A) - (r), (A) unchanged
(A) - (A) V (r)
11-11
The content of registerr is subtracted from the
accumulator. The accumulator remains unchanged. The condition flags are set as a result
of the subtraction. The Z flag is set to 1 if (A) =
(r). The CY flag is set to 1 .if (A) < (r) ..
Cycles:
States:
Addressing:
Flags:
ROTATE LEFT
RLC
1
4
register
Z,S,P,CY,AC
ACC
C
COMPARE MEMORY
CMP
The content of the accumulator is rotated left
one position. The low order bit and the CY flag
are both set to the value shifted out of the high
order bit position. Only the CY flag is affected.
M
(A) - ((H) (L», (A) unchanged
The content of the memory location whose
address is contained in the Hand L registers is
subtracted from the accumulator. The accumulator remains unchanged. The condition flags
are set as a result of the subtraction. The Z flag
is set to 1 if (A) = ((H)(L». The CY flag is set to 1
if (A) < ((H)(L».
'Cycles:
States:
Addressing:
Flags:
1-
Cycles:
States:
Flags:
4
CY
ROTATE RIGHT
RRC
2
7
register indirect
Z,S,P,CY,AC
The content of the accumulator is rotated right
one position. The high order bit and CY flag are
both set to value shifted out of the low order bit
position. Only the CY flag is affected.
COMPARE IMMEDIATE
CPI
data
datq
Byte 1
Cycles:
States:
Flags:
Byte 2
ROTATE LEFT THROUGH CARRY
1
4
CY
RAL
(A) - data, (A) unchanged
The content of the second byte of the instruction 'is subtracted from the accumulator. The
condition flags are set by the result of the subtraction. The Z flag is set to 1 if (A) = (data). The
CY flag is set to 1 if (A) < (data).
ACC
C
Cycles:
States:
Addressing:
Flags:
2
7immediate
Z,S,P,CY,AC
The content of the accumulator is rotated left
one position through the Coy flag. The low order
bit is set equal to the CY flag and the CY flag is
set to the value shifted out of the high orderbit.
Only the CY flag is affected.
Rotate Instructions (RLC, RRC, RAL, RAR) provide a method of recirculating the contents of
the accumulator one position to the right or left.
During Rotate Instructions, only the Carry flag
(CY) is affected.
'
Cycles:
States:
Flags:
11-12
1
4
CY
ROTATE RIGHT THROUGH CARRY
(CY) - 1
RAR
The CY flag is set to 1. No other flags are
affected.
Cycles:
States:
Flags:
1
4
CY
11.1.8
ACC
C
This group of instructions may alter normal
sequential program execution. Condition flags
are not affected by an instruction in this group.
The two types of branch instructions are unconditional and conditional.
The content of the accumulator is rotated right
one position through the CY flag. The high
order bit is set equal to the CY flag and the CY
flag is set to the value shifted out of the low
order bit. Only the CY flag is affected.
Cycles:
States:
Flags:
Branch Group
Unconditional transfers perform the specified
operation on register PC (the program counter).
Conditional transfers examine the status of one
of the four processor flags to determine if the
specified branch is to be executed.
1
4
CY
COMPLEMENT ACCUMULATOR
JUMP (Unconditional)
CMA
JMP
addr
o
(A) -
o
0
0
0
Byte 1
(A)
ONE's Complement of the accumulator is per·
formed (zero bits become 1, one bits become 0).
Cycles:
States:
Flags:
1
4
none
Byte 2
high-order addr
Byte 3
I
!
I
I
(PC) - addrH addrL
Complement Carry and Set Carry (CMC, STC)
are provided for direct control of the Carry flag:
These will allow the Carry flag to be set. No
other flags will be affected by the operation.
Jump (unconditional) provides for loading of
the Program Counter with the two bytes which
immediately follow the instruction. Therefore,
control is transferred to the instruction whose
address is specified in byte 3 and byte 2 of the
current instruction.
COMPLEMENT CARRY
CMC
3
10
Cycles:
States:
Addressing:
Flags:
(CY) - (CY)
immediate
none
CONDITIONAL JUMP
The CY flag is complemented. No other flags
are affected ..
Cycles:
States:
Flags:
low-order addr
JZ,JNZ,JC,JNC,JPO,JPE,JP,JM
1
4
CY
C
SET CARRY
o
addr
Byte 1
low-order addr
Byte 2
high-order addr
Byte 3
STC
o
11-13
l1li
«SP) ((SP) (SP) (PC) ...,
If the specified condition is true, control is
tranferred to the instruction whose address is
specified in byte 2 and byte 3 of the current
instruction; otherwise, control continues
sequentially. The conditions that may be
specified are as follows:
\
The high-order eight bits of the next instruction
address are moved to the memory location
whose address is one less than the content of
register SP. The low-order eight bits of the next
instruction address are moved to the memory
location whose address is two less than the
content of register SP. The content of register
SP is decremented by 2. Control is transferred
to the instruction whose address is specified in
byte 3 and byte 2 of the current instruction;
Note: C denotes the bit combination in the
Branch Instructions.
C.
Condition
NZ· Not Zero
.z - Zero
NC - No Carry
C - Carry
PO - Parity Odd
PE· Parity Even
P- Plus
M - Minus
Flag
(Z=O)
(Z= 1)
(CY:::O)
(CY=1)
(P=O)
(P= 1)
(S = 0)
(S=1)
000
001
010
011
100
101
110
111
Cycles:
States:
Addressing:
Flags:
Conditional jumps may occur for any Condition
flag except Auxili!'lry Carry (AC).
Cycles:
States:
Addressing:
Flags:
10
immediate
none
low-order addr
Byte 2
high-order addr
Byte 3
I
If(C),
((SP) - 1) ..., (PCH)
. (SP) - (SP) - 2
(PC) ..., addrH addrL
If the specified condition is true, the actions
specified in the CALL instruction (see above)
are performed; otherwise, control continues
sequentially.
C denotes the bit combination in Byte 1 of the
Instruction.
C
000
001
010
011
100
101
110
111
CALL
addr
.0
addr
Byte 1
C
Call instructions may be unconditional, in
which case the transfer of program control
occurs immediately; or conditional, which
checks for a specific condition flag before the
call is executed.
0
17
immediate/reg'ister indirect
none
CZ,CNZ,CC,CNC,CPO,CPE,CP,CM
3
Call
5
CONDITIONAL CALL
Call Instructions (CALL, CZ, CNZ, CC, CNC,
CPO, CPE, CP, CM), like the Jump Instructions,
provide for loading of the Program Counter with
the two bytes which immediately follow the
instruction. However, prior to loading the Program Counter, the current contents of the
counter (which point to the next sequential
memory location) are stored in Memory in an
area specified by the Stack Pointer (SP), i.e.
"pushed" onto the stack. Once the PC is,stored
on the stack, the PC is loaded with the two
bytes immediately following the. .instruction
and program control is transferred to the new
location:
o
1) ...,. (PCH)
2) - (PCLJ
(SP) - 2
addrH addrL
Byte 1
Flag
(Z=O)
(Z = 1)
(CY=O)
(CY=1)
(P=O)
(P= 1)
(S =0)
(S= 1)
Condition
NZ· Not zero
Z- Zero
NC- No Carry
C- Carry
PO- Parity Odd
PE- Parity Even
p. Plus
M- Minus
Note: / means depends on condition flags.
low-order addr
high-order addr
!
-,
Byte 2
Cycles:
States:
Addressing:
Flags:
Byte 3
I
11-,14
3/5
11/17
immediate/register indirect
none
Cycles:
States:
Addressing:
Flags:
Return Instructions (RET, RZ, RNZ, RC, RNC,
RPO, RPE, RP, RM), provide a method of transferring program control back to a location from
which an exit had occurred during a Call
instruction. It is accomplished by "popping"
the top two bytes from the stack into the Program Counter. Return instructions are unconditional or conditional.
The Restart instructions (RST) are nearly identical to the Call instructions except:
1. The address to which program control is
transferred is one of eight memory locations.
RETURN
2.
RET
o o
(PCl) - «SP))
(PCH) - «SP) + 1)
(SP) - (SP) + 2
RST
3
10.
register indirect
none
Control is transferred to an eight-byte Restart
block starting with the location whose address
is eight times the content of N. (See chart).
C
(PCLl - «SP))
(PCH) - «SP) + 1)
(SP) - (SP) + 2
N
000
001
010
011
100
101
110
111
If the specified condition is true, the actions
specified in the RETURN Instruction are performed; otherwise control continues sequentially.
C denotes the bit combination in Byte 1 of the
Instruction.
000
001
010
011
100
101
110
111
Flag
(Z=O)
(Z= 1)
(CY=O)
(CY = 1)
(P=O)
(P= 1)
(S= 0)
(S= 1)
1) - (PCH)
2) - (pel)
(SP) - 2
8* (N)
The high-order bits of the next instruction
address are moved to the memory location
whose address is one less than the content of
register SP. The low-order eight bits of the next
instruction address are moved to the memory
location whose address is two less than the
content of register SP. The content of register
SP is decremented by two.
RZ,RNZ,RC,RNC,RPO,RPE,RP,RM
k
n
«SP) «SP) (SP) (PC) -
CONDITIONAL RETURN
If (C),
All Restart instructions are unconditional.
Although these instructions can be supplied by software, they are normally forced
into the microprocessor by the hardware
during interrupt operations so that program control may be transferred to a
selected location.
RESTART
The content of the memory locc;ltion whose
address is specified in register SP is moved to
the low-order eight bits of register PC. The content of the memory location whose address is
one more than the content of register SP is
moved to the high-order eight bits of register
PC. The content of register SP is incremented
by 2.
Cycles:
States:
Addressing:
Flags:
1/3
5/11
register indirect
none
LOCATION
000016
000816
0010 16
001816
0020 16
002816
0030 16
003816
Program counter bit positions 3, 4, and 5 contain value of N. Other bit positions are forced to
zero.
Condition
NZ - Not Zero
Z - Zero
NC - No Carry
C - Carry
PO - Parity Odd
PE - Parity Even
P - Plus
M - Minus
151413121110 9 8 7 6 5 4 3
10,O:,O,O,O,O,O,OIO,ol,N,
Program Counter
11-15
2
°
10 ,0,01
Cycles:
States:
Addressing:
Flags:
3
11
register indirect
none
register of register pair rp is moved to ,the
memory location whose address is two less
than the content of register SP. The content of
register SP is decremented by 2.
Note: Register pair rp
specified.
LOAD PC FROM HAND L REGISTER
=SP may not be'
PCHl
o
o
RP
00 B-Pair (B and C-Registers)
01 D-Pair (0 and E-Registers)
10 H-Pair (H and l-Registers)
0
(PCH) - (H)
(PCU - (l)
Cycles:
States:
Addressing:
Flags:
The content of the H-Register is loaded into upper S-bits of the PC and the L-Register is loaded
into the lower S-bits of the PC. Program control
is transferred to the new address.
Cycles:
States:
Addressing:
Flags:
11_1_9
PUSH PROCESSOR STATUS WORD
PUSH
PSW
1
5
o
register
none
((SP) - 1) - (A)
((SP) - 2) - (flags)
(SP) - (SP) - 2
Stack, 110, and Machine Control Group
This group of instructions manipulates the
stack, handles I/O data transfer and machine
controls such as interrupt and internal control
flags.
The content of register A is moved to the
memory location whose address is one less
than register SP. The contents of the condition
flags are assembled into a byte and the byte is
moved to the memory location whose address
is two less than the content of register SP. The
content of register SP .is decremented by two.
Stack instructions manipulate the stack,
transferring data between the register pairs
(within the microprocessor) and the s,tack. Data
is transferred to the stiilck using PUSH instructions while data \ is removed from the stack by
POP instructions.
flags
MSB
The PUSH instructions (PUSH B, PUSH 0,
PUSH H, PUSH PSW) provide a method of storing the contents of various register pairs into
memory. The area in which they are saved is the
STACK, which is addressed by the Stack
Pointer Register.
IS ,Z
lSB
0
0
AC
Cycles:
States:
Addressing:
Flags:
PUSH
Push
3
11
register indirect
none
P
,
cvl'
3
11
register indirect
none
The POP instructions (POP B, POP 0, POP H)
provide a method of loading register pairs with
data contained on the stack.
rp
o
POP REGISTER PAIR
((SP) - 1) - (rH)
((SP) - 2) - (rL)
(SP) - (SP) - 2
The content of the high-order register of
register pair rp is moved to the memory location
whose address is one less than the content of
register SPO The content of the low-order
pop
rp
11,
I
R,P
I
(rl) - ((SP))
(rH) - ((SP) +1)
(SP) - ((SP) + 2)
11-16
0
0
0
The content of the memory location, whose
address is specified by the content of register
SP, is moved to the low-order register of
register pair rp. The content of the memory
location, whose address is one more than the
content of register SP, is moved to the highorder register of register pair rp. The content of
. register SP is incremented by 2.
Note: Register pair rp
- - specified.
Cycles:
States:
Addressing:
Flags:
MOVE HAND L TO SP
SPHL
= SP may not be
o
RP
00 8-Pair (8 and C-Registers)
01 O-Pair (0 and E-Registers)
10 H-Pair (H and L-Registers)
Cycles:
States:
Addressing:
Flags:
3
10
register indirect
none
Cycles:
States:
Addressing:
Flags:
1)
(SP) - (SP) + 2
3
10
register indirect
Z,S,P,CY,AC
EI
The interrupt system is enabled following the
execution of the next instruction.
Cycles:
States:
. Flags:
EXCHANGE TOP OF STACK WITH H & L
1
4
none
DISABLE INTERRUPTS
XTHL
01
11
(L) - (SP)
(H) - (SP)
1
5
register
none
ENABLE INTERRUPTS
The content of the memory location whose
address is specified by the content of register
SP is used to restore the condition flags. The
content of the memory location whose address
is one more than the content of register SP is
moved to register A. The content of register SP
is incremented by 2.
Cycles:
States:
Addressing:
Flags:
I
Interrupt Control instructions (EI, 01) are provided for the control of interrupts. An Enable
Interrupt must be executed before the microprocessor will recognize any interrupt requests
from the devices in the system. Once an interrupt is recognized by the microprocessor it will
ignore all further requests until another EI is
executed. If interrupts are enabled and the programmer wishes to ignore them a 01 (disable
interrupts) instructions may be used.
(flags) - ((sp))
+
1
The contents of registers Hand L (16-bits) are
moved to register SP.
PSW
(A) - ((SP)
0
(SP) - (H) (L)
POP PROCESSOR STATUS WORD
POP
5
18
register indirect
none
o
0
!
.
The interrupt system is disabled immediately
following the execution of the 01 instruction.
+
The content of the L-Register is exchanged with
the content of the memory location whose
address is specified by the content of register
SP. The content of the H-Register is exchanged
with the content of the memory location whose
address is one more than the content of
register SP.
Cycles:
States:
Flags:
1
4
none
110 Data Transfer Instructions (IN, OUT) provide
a method of transferring a byte of data to or
from an 1/0 port external to the microprocessor,
11-17
l1li
J
into or out of the accumulator. The port is
selected by the second byte of the instruction.
bit bidirectional data bus for transmission to
the specified port.
Cycles:
,3
States:,
10
A VIH an internal active pullup will
be switched on to the Oat? Bus.
3. A I supply 1AT A = -0.45% I' e.
DATA BUS CHARACTERISTIC DURING ODIN
:r-G
0
0-4
VIN
VCC
ac electrical characteristics
3
Min. Max. Unit
Parameter
Symbol
0.48
2.0
Ji.S
t r , tf
Clock Rise and Fall Time
0
50
ns
tq,1
"'1 Pulse Width
60
ns
t>2
"'2 Pulse Width
220
ns
0
ns
70
ns
tCY
Clock Period
t01
t02
t03
2
tOA
2
too
toc
80
2
Signal Output Delay from "'1 or "'2 (SYNC, WR,
WAIT, HLDA)
2
DBIN Delay from "'2
tOF
tOI
"'1 to "'2
Delay "'2 to "'1
Delay "'1 to "'2 Leading Edges
Address Output Delay from "'2
Data Output Delay from "'2
Delay
1
25
Delay for Input Bus to Enter Input Mode
"'1 and DBIN
tOSl
Data Setup Time During
tOS2
Data Setup Time to "'2 During DBIN
tOH
tiE
1
2
ns
200
ns
220
ns
120
ns
140
ns
tDF
ns
30
ns
150
ns
1
Data Hold Time from "'2 During DBIN
INTE Output Delay from "'2
ns
tRS
READY Setup Time During "'2
120
ns
tHS
HOLD Setup Time to "'2
140
ns
120
ns
"'1
INT Setup Time During "'2 (During
tH
Hold Time from "'2 (READY, INT, HOLD)
tFO
Delay to Float During Hold (Address and Data Bus)
tAW
tow
two
tWA
tHF
2
120
ns
2
Output Data Stable Prior to WR
6
ns
2
Output Data Stable from WR
7
ns
2
Address Stable from WR
7
ns
HLDA to Float Delay
3
ns
WR to Float Delay
9
ns
-20
ns
2
Address Hold Time After DBIN During HLDA
Notes:
1. Oata input should be enabled with OBIN status. No bus conflict
'
.
"
*
T-Fi
:::m
can then occur and data hold time is assured. tDH .., 50ns or tOF,
whichever is less.
2. Typical load circuit:
<5V
tuaOA
OUTPUT
.
C,
I!iOpA
3. tCY = t03 + t,>2 + tl/>2 + t02 + tfl/>2 + trl/>l ;. 480n,.
TVPICAl.l OUTPUT DISPLAY VS . .lCAPACHANCE
o
'SPEC
-1110
-50
0
+SO
.::. CAPACITANCE \pf)
(CACTUAl-CSI'EC)
+100
} CL
= 50pF
CL
= 50pF
~.
CL
CL
= 100pF : Address, Da ta
= 50pF: WR, HLDA, DBIN
4. The following are relevant when interfacing the INS8080A to
devices having VIH = 3.3V:
a) Maximum output rise time from 0.8V to 3.3V = lOOns @
CL = SPEC.
b} Output Delay when measured to 3.0V = SPEC + 60ns @
CL = SPEC.
c) If CL SPEC. add 0.6ns/pF if CL > CSPEC. subtract
0.3ns/pF (from modified delay) if CL <'CSPEC'
5. tAW = 2tCY - t03 - tr>2 - 140ns.
6. tow = tCY - t03 - trl/>2 - 170ns.
7. If not HLOA, two = tWA = '03 + trl/>2 + IOns. If HLOA. two =
tWA =tWF·
8. tHF '" t03 + trl/>2 - 5Ons.
9. twF = t03 + 'rl/>2 - IOns.
10. Oata in must be stable for this period during OBIN . T3' Both
'OSl and tOS2 must be satisfied.
11. Ready Signal must be stable for this period during T2 or TW'
(Must be externally synchronized.)
'*
12. Hold signal must be stable for this period during T2 or TW when
entering hold mode, and during T3, T4, TS. and TWH when in
-10
-20
= 100pF
ns
5
2
CL
ns
0
Address Stable Prior to WR
tWF 2
tAH
in Halt Mode)
}
ns
200
tiS
Test Condition
hold mode. (External synchronization is not required.)
13. Interrupt signal must be stable during this period of the -last
clock cycle of any instruction in order to be recognized on the
following instruction. (External synchronization is not required.)
14. This timing diagram shows timing relationships only; it does not
represent any specific machine cycle.
0-5
[14]
timing waveforms
,
Note: Timing measurements are made at the following reference
voltages: CLOCK '1' = 8:0V, '0' = 1.0V; INPUTS '1' = 3.3V,
'0' = 0.8V; OUTPUTS '1' = 2.0V, '0' = 0.8V .
<1>1
. ~1r~Rfnfn
frfr---*'-~
r-----,
I:-----!j
<1>2
~
It
r=----\
~
'1
1021_
A1S·AD
[~~--- ~., t
I: :.
07.00
0'
-r
SYNC
m
-tIDC
OBIN
~,d
f
L,OF}
WI!
_ -
IH-tI~Cl-
READY ___________ _
WAIT
IRS\-
IH_II-I
HLOA
'"
INTE
~
-IJ~IWF-I
I-IIOC
xmx
~
10C-
HOLD
..:::L.J-- IAH
-ltOCr:::;:-~_ _.....j_ _
~RSr:::rtOC~
!-IHF-
IH-tl ' -
-J!srr I
II
-- tdJ211t:
':'>::JL
4J=-
I
~
L
L::.Jl.l_____
INS8080 A CPU
functiona I block diagram
tl
(3-10)°7.°0
BIDIRECTIOfliAl DATA BUS
I
DATA BUS
BUFFER/LATCH
~
(8 BIT)
INTERNAL DATA BUS
It
ACCUM~LATO~
LATCH
(S)
I
t
L
TEMP. REG.
(8 BIT)
INTEANAL DATA BUS
t {51'"
1)1
INSTRUCTION IJ~
REGISTER (8)
FLAG
FlIp·flOPS
181
~
t
~
ARITHMETIC
lOGIC
UNIT
(AlU)
'"
-
t
DECIMAL
ADJUST
POWER
SUPPLIES
MACHINE
CYCLE
ENCODING
1
TIMING
ANO
CONTROL
r~"'v
~-'Vl,
~+5V
(2)
-""""GNO
1
WRT
WR
(18)
DATA BUS
CONTROL
~
DBIN
(11)
INTERRUPT
CONTROL
~
INTE
(16)
t
tNT
(14)
WAIT
HOLD
CpNTROL
~
HOLO
ACK
t
HOLO
(13)
CONTROL
~
WAtT
(24)
t
SYNC
REAOY
(23)
~
SYNC
119}
(2~1
tOCKSt
q,1
(22)
rlOWOROER,
W
(8)
,
z
181
~
~
DECODER
ANO
1-
rHlGHORDER,
TEMP REGISTER
INSTRUCTION
181'-
*
IT
1
MULTIPLEXER
¢2
(15)
TEMP REGISTER
c
0
REGISTER
'81
H
REGISTER.
181
E
'81
REGISTER
l
REGISTER
STACK POINTER
PROGRAM COUNTER
INCREMENTER/DECREMENTER
.....
ADDRESS BUFFER
REGISTER
ARRAY
181
(16)
(16)
(16)
ADDRESS LATCH
l
RESET
(12)
181
REGISTER
REGISTER
--<0.....-
-
(8)
{l61
,a.
AI5-AO
ADORESSBUS
(40-29.21-25.1)
NOTE: Applielhl~ pin numberllare incillded
wlthinpilrenthelles_
INS8080A functional pin definition
memory location O. It should be noted that the status flags,
accumulator, stack pointer, and registers are not cleared
during the RESET sequence.
The following describes the function of all of the INS8080A
input/output pins. Some of these descriptions reference
internal timing periods.
•
,
•
".""
,
n.i"""" ,.!.'"
40 Lead Cera~ic Dual·in-Line Package (0)
Order Number I NS8080AD
, ,
... .. ,
'
"""
..
"
,,",
..
40-Lead Plastic Dual·in-Line Package (N)
Order Number I NSB080N
w
Manufactured under one or more (If the folicw'ng U.S. patents: 3083262, 3189758, 3231797, 3303356. 3317671, 3323071, 3381071, 3408542,34,21025,3426423,3440498,3518750,3519897, 3557431, 3560765,_
35M218, 3571630, 3575609, 357~059" 3593069, 3~97040< 3607469,3611859, 3631312, 3633052, 3638131, :3648071, 3651565, 3693248.
National Semiconductor Corporation
2900
S~tniConduclor
Drive. Santa Clara. California 95051, (408) 737·50001TWX (910) 339·9240
National Semiconductor GmbH
808 Fuerstenfeldbruck, Industriestrasse 10, West Germany, Tele. (06141) 13711Telex 05·27649
Nalional Semiconductor (UK) Ltd.
Larktield Industrial Estate, Greenock. Scotland, Tele. (0475) 33251/Telex 778·632
N3tlonal OilH not assume any responSibIlity for use 01 any
Cfrt~llry
descrllm.l; no weul! patent licenses are unpiled; and
0-12
Na!lI~nal
reserves tile rtght, at any time wltllout lIotlce, to c!Jange sall1 CIrcuitry.
~National
APRIL 1978
~ Semiconductor
INS8224 Clock Generator and Driver
General Description
Features
The I NS8224 is a clock generator/driver contained in a
standard, 16-pin dual-in-line package. The chip, which is
fabricated using Schottky Bipolar technology, generates
clocks and timing for National Semiconductor's INS8080
microcomputer family.
Included in the INS8224 is an oscillator circuit that is
controlled by an external crystal, which is selected by
the designer to meet a variety of system speed requirements. Also included in the chip are circuits that provide:
a status strobe for the I NS8228 or I NS8238 system
controllers, power-on reset for the INS8080A microprocessor, and synchronization of the READY input to
the I NS8080A.
•
Crystal-Controlled
Operation
•
Single Chip Clock Generator and· Driver for INS8080A
Microprocessor
•
Provides Status Strobe for I NS8228 or I NS8238
System Controllers
•
Provides
Power-On
Oscillator
Reset for
for
Stable
I NS8080A Micro-
processor
•
Synchronizes READY Input to INS8080A Microprocessor
•
Provides Oscillator Output for Synchronization of
External Circuits
•
Reduces System Component Count
INS808() Family CPU Group to MICROBUSTM* Configuration
,...
A15-AO
A15-AO
~
CSO
-",.
CHIP
SELECT
lOGIC
see
(I NS82LS05)
CS1
··
ESi
INS8080A
07-00
01-00
02
t t
.t: i.•· .·•••••.. ··/.
I,;i'•. i . ti?
MEMR
MEMW
INS822S
S
IIOR
RESET
4D~,
~ESET
IV"
I)"
*Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
S
U
IIOW
SISTS
D-13
INTERFACE
DEVICE
GROUP
M
I
C
R
0
07-00
01
System
r
PERIPHERAL
CONTROL
COMMUNICATIONS
DIGITAL 110
MEMORIES
Absolute Maximum Ratings
Operating Conditions
(NOTE 2)
Supply Voltage, vee . . . . . . . . . . . . . . . . . . . . . 7 V
voo . . . . . . . . . . . . . . . . . . . . 15V
Input Voltage . . . . . . . . . . . . . . . . . -1.0V to +5.5 V
Storage Temperature Range ........ _65°C to +150°C .
Lead Temperature (Soldering, 10 seconds) ..... 300°C
Supply Voltage
Vee
Voo
Temperature
Min,
Max.
Units
4.75
11.4
0
5.25
12,6
70
V
V
°c
,
DC Electrical Characteristics
TA = O°c to +70°C; Vee = +5.0 V ± 5%; Voo = +12 V ± 5%.
'"
Limits
Parameter
Symbol
Min.
Typ.
Input Current Loading
IF
Max.
Units
Test Conditions
-0.25
mA
VF = 0.45 V
10
I1A
VR=5.25V
V
le=-5mA
--~---
=t'0~' L">,,, Con,o'
.Vc . __ 'o,o~fo'wwd e',m, V"',,~
VIL
.
Input "Low" Voltage
------,
-1.0
0.8
----,- ,--
VIH
Input "High" Voltage
2.6
2.0
VIH-VIL
RESIN Input Hysteresis
0.25
------ ----,-------
.
0.45
VOL
V
Vee= 5.0 V
V
V
RESIN Input
All Other Inputs
V
Vee= 5.0 V
V
Output "Low" Voltage
0.45
(q,1. q,21. Ready, Reset, STSTB
IOL = 2.5 mA
V
All Other Outputs
IOL=15mA
V
V
V
IOH = -100 I1A
IOH= - lOO I1A
IOH = -1 mA
Output "High" Voltage
VOH
Ise[l]
---_..- - f-'
q,l, ¢2
READY, RESET
All Other o'utputs
Output Short Circuit Current
(All Low Voltage Outputs Only)
9.4
3.13
2.4
-10
-60
.,' mA
Icc
Power Supply Current
115
mA
100
Power Supply Current
12
mA
-'-----
Vo=OV
Vee= 5.0 V
Notes:
1. Caution -- 1>1 and rP2 output drivers do not have short circuit protection.
2. "Absolute Maximum Ratings" are those values beyond which the safety of the device cannot be 'guaranteed. Except for "Operating
Temperature Range" they are not meant to imply that the devtces should be operated at these limits. The table of "Electrical Characteristics"
provides conditions for actual device oper~;ltion.
Crystal Requirements *
Tolerance ...... ; . . . . . . . . 0.005% at O°C to +70°C
Resonance ........................ F undamental*
Load Capacitance . . . . . . . . . . . . . . . . 20 pF to 30 pF
Equivalent Resistance . . . . . . . . . . . . . . . 75 n to 20 n
Power Dissipation (min). . . . . . . . . . . . . . . . . . 4mW
*1 t is good design practice to ground th~ case of the crystal
*With tank circuit Lse 3rd overtone mode,
0-14
AC Electrical Characteristics
TA = o°c to +70°C; Vcc = +5.0 V ± 5%; Voo = +12 V ± 5%.
Symbol
Limits
Parameter
Min.
Typ.
Units
Max.
ttJ>1
<1>1 Pulse Width
2tCY
- - - 20n5
ttJ>2
<1>2 Pulse Width
5tCY
- - - 35ns
t01
<1>1 to <1>2 Delay
0
t02
<1>2 to <1>1 Delay
2tCY
---14ns
t03
<1>1 to <1>2 Delay
--
tR
<1>1 and <1>2 Rise Time
20
tF
<1>1 and <1>2 Fall Time
20
tOtJ>2
<1>2 to <1>2 (TTL) Delay
-5
+15
<1>2 to STSTB Delay
6tCY
- - - 30ns
6tCY
toss
tpw
STSTB Pulse Width
Test Conditions
9
9
ns
CL = 20 pF to 50 pF
9
2tCY
2tCY
- - + 20n5
9
9
<1>2 TTL, C L = 30 pF
,
Ins
-9
9
tCY
- - - 15ns
STSTB, C L = 15 pF
R1 = 2 kD
R2 = 4 kD
9
- - - 1----tORS
RDYIN Setup Time to Status Strobe
tORH
RDYIN Hold Time After STSTB
tOR,
READY or RESET to <1>2 Delay
tClK
ClK Period
R1 = 300D
R2 = 600D
4tCY
50n5- - , -
9
4tCY
I
-9
Ready 8, Reset
CL = 10pF
R1 = 2 kD
R2 = 4kD
4tCY
- - - 25ns
9
tCY
-
-
fMAX
Maximum Oscillating Frequency
CIN
I nput Capacitance
9
MHz
27
8
Test Circuit
Vee
.,
.,
INPUT
!"
GND
0-15
~
GND
pF
Vcc = +5.0V
Voo=+12V
V BIAS = 2.5 V
f = 1 MHz
Waveforms
~-----------------~------tCY ----~------------~--~
tR --'
i--'
'4>1
¢1-----'I
I.
--.I ,-- tF
"
!
t~2
"'2
--
----,-+lI't
tD2 ----~
I::.tD>2
¢2!TTL) _ _ _ _ _ _ _ _ _ _ _ _...,Ii"/,
I
f-----,-
tOR - -
._----- ---- - --- ----'-- ---""'.j,..------+------------
READY OUT _ _ _ _ _ _ _ _ _ _ _ _ _~-IJ1'
________ ,_
I--::-- tOR
---------------~--------.
-----00
RESET OUT
VOLTAGE MEASUREMENT POINTS: 1/>'1,1/>2 Logic "0" = 1.0 V, logic "1" = 8.0 V. All other signals measured at 1.5 V.
AC Electrical Characteristics
TA
(For tey =488.28 ns)
=O°C to +70o 'C"; Vee =+5.0 V ±5%; Voo =+12 V ± 5%.
Symbol
"
,
.,'>
,
~
Parameter
Limits
Typ.
Min.
-
"
Max.
Units
tl/>l
' rPl PulseWidth
89
ns
tl/>2
rP2 Pulse Width
236 '
ns
tOl
Delay ifil to rP2
0
ns
t02
Delay '¢2 to rPl
95
t03
Delay rf>1 to rf>2 Leading Edges
109
tr
tf
toss
rf>2 to STSTB Delay
ns
129
ns
Output Rise Time
20
ns
Output Fall Time
20
ns
326
ns
Test Conditions
tey
=488.28 ns
,
rPl & rf>2 Loaded to
CL = 20 to 50 pF
,
tOtJ>2
rf>2 to rf>2(TTL) Delay
tpw
Status Strobe Pulse Width
tORS
RDYIN Setup Time to STSTB
tORH
tOR
fMAX
Oscillator Frequency
296
-5
+15
ns
40
ns
~167
ns
RDYIN Hold Time after STSTB
217
ns
READY or RESET to ~2 Delay
',192
ns
18.432
-D·16
MHz
Ready & Reset Loaded
to 2 mA/l0 pF
All measurements
referenced to 1.5 V
unless specified
otherwise.
INS8224 Functional Pin Definitions
The following describes the function of all of the
INS8224 input/output pins. Some of these descriptions
reference internal circuits.
For manual system reset, a momentary contact switch
that provides a low (ground) when closed is also connected to the RESIN input.
INPUT SIGNALS
Ready In (RDYIN): An asynchronous READY signal
that is re-clocked by a D-type flip-flop of the I NS8224 to
provide the synchronous READY output discussed below.
Crystal Connections (XTAL 1 and XTAL 2): Two inputs
that connect an external crystal to the oscillator circuit
of the INS8224. Normally, a fundamental mode crystal
is used to determine the basic operating frequency of
the oscillator. However, overtone mode crystals may
also be used. The crystal frequency is nine times the
desired microprocessor speed (that is, crystal frequency
equals l/tCY x 9). When the crystal frequency is above
10 MHz, a selected capacitor (3 to 10 picofarads) may
have to be connected in series with the crystal to produce
the exact desired frequency. Figure A.
+5 Volts: V cc supply.
+12 Volts: VDD supply.
Ground: 0 volt reference.
OUTPUT SIGNALS
Oscillator (OSC): A buffered oscillator signal that can
be used for external timing purposes.
4>1 and rh. Clocks: Two non-TTL compatible clock phases
that provide nonoverlapping timing references for
internal storage elements and logic circuits of the
INS8080A microprocessor. The two clock phases are
produced by an internal clock generator that consists
of a divide-by-nine counter and the associated decode
gati~g logic. Figure B.
Tank: Allows the use of overtone mode crystals with
the oscillator circuit. When an overtone mode crystal is
used, the tank input connects to a parallel LC network
that is ac coupled to ground. The formula for determining the resonant frequency of this LC network is as
follows:
1
rh. (TTL) Clock: A TTL 4>2 clock phase that can be used
tor external timing purposes.
F=
2rrv'lG.
Status Strobe (STSTB): Activated (low) at the start of
each new machine cycle. The STSTB signal is generated
by gating a high-level SYNC input with the 4>1A timing
signal from the internal clock generator of the INS8224.
The STSTB signal is used to clock status information
into the status latch of the INS8228 system controller
and bus driver.
Synchronizing (SYNC) Signal: When high, indicates the
beginning of a new machine cycle. The I NS8080A
microprocessor outputs a status word (which describes
the current machine cycle) onto its data bus during the
first state (SYNC interval) of each machine cycle.
Reset In (RESIN): Provides an automatic system reset
and start-up upon application of power as follows. The
RESIN input, which is obtained from the junction of
an external RC network that is connected between V cc
and ground, is routed to an internal Schmitt Trigger
circuit. This circuit converts the slow transition of the
power supply rise into a sharp, clean edge when its input
reaches a predetermined value. When this occurs, an
internal D-type flip-flop is synchronously reset, thereby
providing the RESET output signal discussed below.
Reset: When the RESET signal is activated, the content
of the program counter of the INS8080A is cleared.
After RESET, the program will start at location 0 in
memory.
Ready: The READY signal indicates to the INS8080A
that valid memory or input data is available. This signal
is used to synchronize the I NS8080A with slower
memory or input/output devices.
Logic Diagram and' Pin Configuration
rn::>
XTAll
DD
XTAl2
G>
TANK
OSC
RESET
.,
.1
CLOCK
GEN.
+,
., (TTl)
.'0
CI>
IT>
DI>
STSTB
ROYIN
XTAL I
CI>
READY
TANK
INSB214
IT>
RESET
IT>
READY
G>
0·17
OSC
,,2 (TTl)
11
4>1
mrs
10
4>1
GND
n
VCC
XTAL1
DD
RESIN
RDYIN
16
RESiN
SYNC
SYNC
SCHMITT
INPUT
CD
DD
voo
1m
F
=__1_
2. VIC
1 UNIT
= _ _1__
OSC. FRED.
USED ONLY
FOR OVERTONE
CRYSTALS
3-10pF
(ONLY NEEDED
ABOVE 10MHz)
13
11
22
10
15
4
23
4
- - SP
(,.)
m
INS8080 Family CPU Group to MICROBUS Configuration
INS8Z5S:
il1I'i
*Trademark, National Semi.conductor Corp.
© 1978 National Semiconductor Corp.
z
en
0-19
en
C
::!.
<
...CD
Absolute Maximum Ratings
Temperature Under Bias . . . . . . . . . . . . O°C to +70°C
Storage Temperature . . . . . . . . . . . . _65°-C to +150°C
Supply Voltage. Vee . . . . . . . . . . . . . -0.5 V to +7 V
Input Voltage . . . . . . . . . . . . " .... -1.5 Vto +7 V
Output Current . . . . . . . . . . . . . . . . . . . . . . 100 mA
DC Electrical Characteristics
TA = o°c to +70°C; Vee = 5 V ± 5%.
Symbol
Ve
Parameter
Min.
Input Clamp Voltage. All Inputs
Limits
Typ)1]
0.75
Max.
-1.0
Units
Test Conditions
V
Vee = 4.75V; Ie =
~5
mA
I nput Load Current
STSfB
IF
IR
02& Os
00.01.04.05. & 07
. All Other Inputs
500
750
250
250
/lA
/lA
/lA
/lA
Vee,: 5.25 V
VF = 0.45 V
I nput Leakage Current
STSTB
OBo- DB7
All Oth~r Inputs
100
'20
100
/lA
/lA
/lA
Vee =5.25 V
VR = 5.25 V
2.0
V
Vee= 5 V
190
mA
Vee = 5.25 V
0.45
0.45
V
V
Vee = 4,75 V; 10L = 2 mA
10L = 10 rnA
V
V
Vee = 4.75 V; 10H = -10 /lA
IOH=-1mA
90
mA
Vee=5V
100
-100
/lA
/lA
Vee= 5.25 V; Vo = 5.25 V
Vo = 0.45 V
mA
(See Test Conditions-Pg. 3)
VTH
Input Threshold Voltage. All Inputs
lee
Power Supply Current
0.8
VOL
Output Low Voltage
OO-D7
All pther Outputs
VOH
Output High Voltage
00- 0 7
All Other Outputs
3.6
2.4
los
Short Circuit Current. AII.Outputs
15
10 (off)
Off State Output Current
All Control Outputs
liNT
INTA Current
140
3.8
5
Not.. :
1. Typical values are for T A
=
25°C and nominal supply voltages.
Capacitance
Th-is parameter is periodically sampled and not 100% tested.
Symbol
CIN
Parameter
Input Capacitance
Output Capacitance
COUT
Control Signals
.
I/O
I/O Capacitance
(0 or DB)
Limits
Min. Typ.!1] Max.
Units
8
12
pF
7
15
pF
8
15
pF
!
VSIAS "2.5 V.Vee = 5.0 V. TA = 25°C, f = 1 MHz.
0-20
AC Electrical Characteristics
T A = 0° C to +700 C;
v cc = 5 V ± 5%.
Symbol
Limits
Parameter
Min.
Max.
Units
Condition
tpw
Width of Status Strobe
22
tss
Setup Time, Status Inputs Do - D7
8
ns
tSH
Hold Time, Status Inputs Do-D7
5
ns
toc
Delay from STSTB to any Control Signal
20
60
ns
CL = 100 pF
tRR
Delay from DBIN to Control Outputs
30
ns
CL = 100 pF
tRE
Delay from DBIN to Enable/Disable 8080 Bus
45
ns
CL = 25 pF
tRO
Delay from System Bus to 80!!O Bus during Read
30
ns
CL = 25 pF
tWR
Delay from WR to Control Outputs
45
ns
C L = 100 pF
tWE
Delay to Enable System Bus DBo - DB7 after STSTB
30
ns
CL=100pF
two
Delay from 8080 Bus DO - D7 to System Bus DBo - DB7 during Write
40
ns
C L =100pF
tE
Delay from System Bus Enable to System Bus DBo- DB7
30
ns
C L =100pF
tHO
H LDA to Read Status Outputs
25
ns
Cl.. = 100 pF
tos
Setup Time, System Bus Inputs to HLDA
10
ns
tOH
Hold Time, System Bus Inputs to HLDA
20
ns
5
5
ns
Test Conditions
Test Load l2J
Vee
Rl
OUTPUT
PIN
2. For DO - 07: R1
~
4 kn, R2
=~,
l:
R2
~NO
CL = 25 pF.For ali other outputs: R1 = 500 n, R2 = 1 kn, CL = 100 pF.
INTA Test Circuit (for RST 7)
~
+12 V
lku±10%
1.
OP822818238
liNT
23
INTA
D·21
Waveforms
4>1
4>2
STATUS STROBE
----=\"'lr'---------..:-....
8080DATABUS~~~~~~~~~==~~~~~~~~~~~~
HLDA:::::~~=f~==:J~==5JH=~~===============
DBIN
1ImI,i1l1!,l\lmI!
IN1AU~~:G ~t~:
SYSTEM BUS DURING READ : : : : : : : :
INS8080A BUS DURING READ - - - - - - - -
INS8080A BUS DURING WRITE : : : : : : : : :
SYSTEM BUS DURING WRITE - - - - - - - - -
:1~~~~~__
~§~*-~tw~D~~~~~~~~~
...
CD
Physical Dimensions·
en
:s
to
"0
C
...CD
«I
-e
0.025
RAO ~"
-o
-~
c
o
GLASS
E
,0,055
1I.20G
,
~-'I
CD
.~
I
--1
10.060
10.100
I
I
I__ U.l01l_1 1 _
'11.010
~l :f~~
-~O.1Z&O.010
0.018
l'O.OOl
MIN
Ceramic Dual-in-line Package (J)
Order Number INS8228J/INS8238J
~
~
en
z
ii
~
~
""
I
(1.600) ~
z
RAO
0.540 iO.OOS
'''''rffim-ffiT.iffi'Ff:fFm-ffi''ffiffiFfffi9im=,!!
-
B
0.[175
0.600-0.620
1"
11.040
.11l·90S}
I-~rn.i40:;5.148i----ti
f
,
II
0.625 :::~:
'-
10
11
Ill."'!'.""
12
I---
0.160 ~U05
(4.064 !O.121)
jr-r----=-t+-------,~J:"I::::I
.
___ I f
(::::=::~~~I
f--~(1!i.815~:;:~)--1 G.G75~
(1.905
~0.J81)
~ ~I::::I --Ij--'(:::~~:::::!I
I_
I-
TVI'
t-
MI.
(::!~:l
MIN
24-Le.d Molded DIP (N)
Order Number INS8228N/INS8238N
National Semiconductor
Corporalion
2900 Semiconductor Drive
Santa Clara. California 95051
rel: (408) 737-5000
TWX: (910) 339·9240
National Semiconductor GmbH
NS Int,rnationallm:" Japan
8000 MOncnen 21
61f2 Elsenheimerstrasse
West Germany
Tel: 0891915027
Te!ex' 05·22772
Miyake Building
1-9 Yotsuya. Shmjuku-ku 160
Tokyo, Japan
Tel: (03) 355-3711
TWX: 232·2015 NSq-J
NS Eleclronics (Hong Kong) Lid.
8th Floor.
Cheung Kong Electronic Bldg.
4 Hing Vip Street
Kwun Tong
Kowloon, Hong Kong
Tel: 3-411241-8
Telex: 73866 NSEHK HX
Cable: NATSEMI
NS El,ctronics 00 BrasH
HS (Iectronics Ply. Lt•.
Avda Bngade!ro fafla Lima 844
11 AMar Conjunto 1104
Jardlm Paulistano
Sao Paul(l, Brasil
Telex' 1121008 CABINE SAO PAULO
Cor. Stud Rd. & Min, Highway
Bayswat~r.
Victoria 3153
Australia
Tel: 03·729-6333
Tetell": 32096
National (Ioes not assume any responsibility for use of any circuitry desett,bed; no circuit patent licenses are implied; and National reserveS'the right, at any ,time without, notice, to change said Circuitry
0-24
.
~ Semiconductor
~National
JULY 1978
INS8202J8203 TRI·STATE® Octal Buffers
General Description
Features
These devices provide eight two-input buffers in each
package. All employ the newest low power Schottky
TTL technology. One of the two inputs to each buffer
is used as a control line to gate the output into the
high-impedance state, while the other input passes
the data through the buffer. The INS8202 presents
true data at the outputs, while the INS8203 is
inverting. All eight TRI·STATE enable lines are
common, with access through a 2-input NOR gate.
The outputs are placed in the TRI·STATE condition by
applying a high logic level to the enable pins. These
devices represent octal, low power Schottky versions
of the very popular DM8095 and 96 TRI-STATE hex
buffers.
• Identical to DM81 LS95 and DM81LS96
• Octal versions of popular DM80LS95, 80LS96
• Typical power dissipation
INS8202 - 80mW
INS8203 - 65mW
• Typical propagation delay
INS8202 - 13ns
INS8203 - 10ns
• Low power Schottky TRI-STATE technology
• MICROBUSTM- compatible
INS820218203 MICROBUS Configuration
INS8202/820J
INS8202/820J
EIGHT
HIGH
CURRENT
DRIVE
USER
OUTPUTS
Y8-Y1
+:=T
USER
INPUTS
M
I
C
R
M
I
C
R
0
0
8
U
S
B
U
S
CS
WR
G1
G2
iITi
CS
MICROBUS
RECEIVER
MICROBUS
DRIVER
-Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
D·25
,.••
Electrical Characteristics
over recommended operating free-air temperature range (unless otherwise noted)
INS820218203
Parameter
Conditions
VIH
High Level Input Voltage
VIL
Low Level Input Voltage
VI
Input Clamp Voltage
10H
High Level Output Current
VOH
High Level Output Voltage
Min
Typ
Max
2
V
Vee;" min, II = -18mA
10L
Low Level Output Current
VOL
Low Level Output Voltage
Vee = min, VIH = 2V, IIOH = max
VIL = 0.8V
IIOH = -5mA
Vce = min, VIH = 2V, VIL
=
max, VIH
10(OFF) Off-State (High·lmpedance State) Vee
Output Current
VIL = 0.8V
= 2V I Vo
II
Input Current at Maximum Input
Voltage
Vc.c = max, VI = 7V
IIH
High Level Input Current
Vee = max, VI
IlL
Low Level Input Current
A Input
Vee = max
= 0.8V, 10L
= max
mA
V
20
VI
Vee
16
0.5
-20
G Input
Vcc = max (Note 2)
mA
= 0.4V
VI
Short Circuit Output Current
-2.6
I Vo = 2.4V
Both G Inputs at 0.4V
Supply Current
V
V
= max
VI
los
V
-1.5
2;4
= 2.7V
Ice
0.8
2.7
Soth G Inputs at 2V
Units
= 0.5V
= 0.4V
= 0.4V
0.1
mA
20
,..A
-.20
,..A
-0.36
-0.36
-30
,..A
-60 -130
INS8202
16
26
INS8203
13
21
mA
mA
mA
=
Note 1: All typical values are at VCC
5V, TA = 25 "C.
Note 2: Not more than one output should be shorted at a time, and duration of the short circuit should not exceed one second.
Connection Diagrams
V[ y i
2B
19
8
18
YB
11
r
Yl
AI'
16
15
,.
V6
13
i'
Vee
Y,
]"2B
11
12
'G~
A8
1,9
V8
118 .
AI
17
VI
116
.6
15
114
V6
A5
13
V5
112
11
~,~I~I~~ ~,~~~~
,
~1
~NJ.~~
2
"
Jll
4
.2
)25
6
•3
J31
8
A.
.1. 9 •
V•
.,
J.'B
GNB
1
FA~~~
2
Al
v,b
A2
•
15
V2
6
A3
INS8203
INS8202
0-26
b
V3
••
8
19
V.
I,·
GNO
Switching Characteristics
Vee
= 5V, TA = 25°C
INS8202
Conditions
Parameter
Min
INS8203
Typ
Max
11
16
15
Min
Typ
Max
Units
6
10
ns
22
13
17
ns
tpLH
Propagation Delay Time,
Low-to-High Level Output
tpHL
Propagation Delay Time,
High-to-Low Level Output
tZH
Output Enable Time to High Level
16
25
17
27
ns
tZL
Output Enable Time to Low Level
13
20
16
25
n's
tHZ
Output Disable Time from High Level
13
20
13
20
ns
tLZ
Output Disable Time from Low Level
19
27
18
27
ns
CL
RL
= 15pF
= 2kn
CL
= 5pF, RL = 2kfl
G1
G2
A
H
X
L
L
X
H
L
L
X
X
Z
Z
H
L
H
Truth Tables
Inputs
G2
A
. Output
Y
H
X
X
H
L
X
X
Z
Z
H
H
L
L
L
G1
L
L
Inputs
L
ou~ut
20~Lead Dual-In-Line Package
Order Number INS8203(N)
20-Lead Duai-ln'Line Package
Order Number INS8202(N)
1'.:.1
D-27
!
CD
Physical Dimensions
inches (millimeters)
::s
In
a:s
( ,)
i.070
(27.178)
MAX
0.092
(2.337)
DIA NOM
0
"F~':::':::':::':::'.e::~~~!::±':::!:~-f
[U
~
Ii)
..:..
a:
0.250 ±0.005
(6.350 ±0.127)
I;;;?,r:;=:;:;=;=:;:r=;=:;::r=r:=r~r.;:;:=;=~~~
0.300-0.320
(7.620-8.128)
t-
co
en
0.030
0.065
r\:"=~i==:=!
I
(1.651)
-(0.229-0.254)
I
TYP
0.075 '.0.005
(1.905 '0.1211
I
--I
0 040 '
--
I'
I
.
=
0.130 '0.005
(3.302 'Olli)
-,
~
"t_J
j--
z
1- (2.286)
TYP
_,_
0.009-0.01-0
(8.763)
MAX
2. 3
0 090
~(1
016)
~-
M~X
~ _0.345 _
I,
NOM
(0.762)
C")
~~
J
J
---r-r-
~
I
0.100'0.010
I
1_(2.540'0.254)--1
I
r-- 0.018 !0.003
(0.457'0.076)
I ~O
~1-·--~5 (0.508)
I.......
(3.:175)
MiN
MiN
20·lead Dual·in·Line Package
Order Number INS8203{N)
NS Package Number N20A
N.tlon.1 Semiconductor
CorpDrltlon
2900 Semiconductor Drive
Santa Clara, California 95051
Tel.: (408) 737-5000
TWX: (910) 339·9240
Nalional Semiconductor GmbH
8000 Miincllefl 21
Elsenheimerstrasse 6'1/2
West Germany
Tel.: 089/9 15027
Telex: 05-22772
NS International Inc" Japan
Miyake Building
1·9 Yotsuya, Shlnjuku-ku 160
Tokyo, Japan
Tel.: (03) 355·3711
TWX: 232·2015 NSCJ·J
National Semiconductor
(Hong Kooglltd.
8th Floor,
Cheung Kong Electronic Bldg.
4 Hing Yip Street
Kwun Tong
Kowloon, Hong Kong
Tel.: 3'411241-8
Telex: 73866 NSEHK HX
Cable: NATSEMI
NS Electronics Do Brasil
NS Electronics Pty. ltd,
Avda Brigadeiro Faria Uma 844 CnL Stud Rd. & Min. Highway
11 Andar Conjunlo 1104
Bayswater, Victoria 3153
Jardim PauJistano
Australia
Sao Paulo, Brasil
Te!.: 03-729-6333
Telex
Telex: 32096
1121008 CABINE SAO PAULO
National does not assume any responsIbility lor usa of any Circuitry described; no circuit patent licenses are imphed, and National reserves the righI, al ally time without notice, 10 change said circuitry.
0\-28
~National
a
APRIL 1978
-enz
(X)
Semiconductor
N
o
(X)
INS8208 8-Bit Bidirectional Transceiver
cp
General Description
Features
to
;::;:
The INS8208 is an 8-bit TRI-STATE® low power
Schottky transceiver. It provides bidirectional drive for
bus-oriented microprocessor and digital communications
systems. Straight through bidirectional transceivers are
featured, with low power Schottky drive capability on
the A ports and 48mA bus drive capability on the B ports.
PNP inputs are incorporated to reduce input loading.
• B-Bit Bidirectional Data Flow Reduces System
Package Count
• Bidirectional TR I-STATE® Inputs/Outputs Interface
with Bus-Oriented Systems
• PNP inputs Reduce Input Loading
• 3.6V Output High Voltage Interfaces with TTL,
MOS, and CMOS
One input, Transmit/Receive, determines the direction
of logic signals through the bidirectional transceiver:
Transmit enables data from A ports to B ports; Receive
enables data from B ports to A ports. The Chip Disable
input disables both A and B ports by placing them in a
TRI-STATE® condition.
• 48mA/300pF Bus Drive Capability
• Pinouts Simplify System Interconnections
• Transmit/Receive and Chip Disable Simplify Control
Logic
• Compact 20-Pin Dual-In-Line Package
The output high voltage (VOH) is specified at 3.6 V
minimum to allow interfacing microprocessors, .TTL,
MOS, CMOS, RAM, or ROM.
•
Low ICC Power (BmA per bidirectional bit)
• MICROBUS TM • Compatible
INS8208 MICROBUS™ Configuration
rADDRESS
BUS
CPU
GROUP
DATA
BUS
CONTROL
BUS
M
I
C
R
07·00
Bl·BO
CS.
CD
0
B
U
s
INS8208I.....
A7·AD , ....
...Jo.
-y
PERIPHERAL
MEMR-[>o- Tii!
I.JI~
* Trademark, National Semiconductor Corporation
© 1978 National Semiconductor Corp.
D-29
"
~Iute
Maximum Ratings
(Note 1)
7V
5.5V
5.5V
-65°C to +150°C
300°C
' 600!11W
Supply Voltage
Input Voltage
Output Voltage
Storate Temperature
Lead Temperature (Soldering, 10 seconds)
Power Dis~ipation
",
Recommended Operating Conditions
-
Supply Voltage (VCC)
Temperature (TA)
Min
Max
Units
4.75
0
5.25
70
V
°c
DC Electrical Characteristics
(Notes :l and 3)
Parameter
Symbol
Limits
Conditions
Description
Typ
Min
Max
Units
A Port (AO-A7)
VIH
Logical "1" Input Voltage
CD = O.BV, T/R = 2.0V
VIL
Logical "0" Input Voltage
CD = O.B'V, T/R = 2.0 V
VOH
Logical "1" Output Voltage CD = O.B V, T/R = O.B V 10H = -0.4 mA
VOL
Logi.cal "0" Output Voltage CD = 0.8 V, T/R = O.B V,IOL
lOS
Output Short Circuit
Current
CD = O.BV, T/R = O.BV, Vo = OV,
VCC = 5.25 V, Note 4
IIH
Logical "1" Input Current
CD = O.BV, T/R = 2.0V,VIH = 2.7\;
II
I nput Current at Maximum
Input Voltage
CD = 2.0 V, VCC = 5.25 V, VIH = 5.25 V
IlL
Logical "0" Input Current
VCLAMP Input Clamp Voltage
Output/Input
TRI·STATE®Current
10D
V
2.0
0.8
VCC-l.15
=' 5mA
-10
V
VCC-O.B
0.3
0.45.
V
-22
-75
mA
1
BO
p.A
1
mA
p.A
CD = O.BV, T/R = 2.0V, VIL = 0.4 V
-70
-250
CD = 2.0 V, liN = -12mA
-0.2
-1.5
-200
BO
VIN=O.4V
VIN=4:0V
CD = 2.0V
V
V
p.A
p.A
B Port (BO - B7)
.
Logical "1" Input Voltage
CD = O.BV, T/R = O.BV
VIL
Logical,"O:' Input Voltage
CD = 0.8 V, T /R = O.B V
VOH
10H = -0.4 rnA
Logical "1'.' Output Voltage CD = O.BV, T/R = 2.0V 10H = -5mA
10H - -lOrnA
VOL
Logical
lOS
Output Short Circuit
Current
CD = 0.8V, T/R = 2.0V, Vo = OV,
VCC = 5.25 V, Note 4
IIH.
Logical "1" Input Current
CD = 0.8V, T/R = 0.8V, VIH = 2.7 V
II
Input Current at Maximum
Input Voltage
CD = 2.0 V, VCC = 5.25 V, VIH = 5.25 V
IlL
Logical "0" I nput Current
CD = 0.8V, T/R = 0,8V, VIL = 0.4V
CD = 2.0V, liN = -12mA
VIH
,
"O~'
Output Voltage CD = O.B V,
VCLAMP Input Clamp Voltage
100
Output/Input
TRI·STATE®Current
T/R = 2.0V
2.0
0·30
.vCC-1.15
2.7
2.4
-
V
V
V
V
Vce- O.B
3.6
3.3
0.3
0.4
10L '" 20mA
101:. = 48mA
VIN = 0.4 V
VIN = 4.0V
CD = 2.0V
V
O.B
0.4
0.5
V
V
-35
-150
mA
1
80
p.A
1
mA
-12
-250
p.A
-0.3
-1.5
-200
+200
V
p.A
p.A
DC Electrical Characteristics
continued
Parameter
Symbol
(Notes 2 and 3)
Limits
Conditions
Description
Min
Max
Typ
Units
Control I nputs CD, T /R
VIH
Logical "1" I n put Voltage
VfL
Logical "0" Input Voltage
2.0
IIH
Logical "l"lnput Current
VIH ='2,7 V
II
I nput Current at
Maximum Input Voltage
VCC = 5.25V, VIH = 5.25V
IlL
Logical "0" Input Current
VIL = 0.4 V
VCLAMP Input Clamp Voltage
V
0.8
V
20
IJ.A
1.0
mA
0.4
0.8
mA
mA
-1.5
V
0.5
ITIR
ICD
IIN=-12mA
0.23
0.45
-0.8
Power Supply Current
ICC
Power Supply Current
CD = 2.0 V, VCC = 5.25 V, VIN = 0.4 V
AC 8ectrical Characteristics
100
65
mA
Vcc = 5V, TA = 25°C
Conditions
Parameter
Min
Typ Max
Units
A Port Data/Mode Specifications
Propagation Delay to a Logical "0" from
tPDHLA B Port to A Port
CD = 0.4 V, T/R = 0.4 V (figure A)
Rl = 1k, R2 = 5k,C1 = 30pF
24
40
ns
Propagation Delay to a Logical "1" from
tPDLHA B Port to A Port
CD = 0.4 V, T /R = 0.4 V (figure A)
R 1 = 1k, R 2 = 5k, C 1 = 30 pF
11
20
ns
tPLZA
Propagation Delay from a Logical "0" to
TRI·STATE® from CD to A Port
BO to B7 = 0.4 V, T/R = 0.4 V (figure C)
S3 = 1, R5= 1k, C4 = 15pF
12
18
ns
tPHZA
Propagation Delay from a Logical "'" to
TRI·STATE® from CD to A Port
BO to B7 = 2.4 V, T/R= 0.4 V (figure C)
S3 = 0, R5 = 1k, C4 = 15pF '
8
15
ns.
tPZLA
Propagation Delay frorn TRI·STATE® to
a Logical "0" from CD to A POrt
BO to B7 = 0.4 V, T/R = 0.4 V (figure C)
S3= 1, R5= 1k,C4=30pF
32
50
ns
tPZHA
Propagation Delay from TRI·STATE® to
a Logical "'" from CD to A Port
BO to 87 = 2.4 V, T/R = 0.4 V (figure C)
S3 = 0, R5 = 5k, C4 = 30 pF
16
25
ns
Propagation Delay to a Logical ':0" from
tPDHLB A Port to B Port
CD = 0.4 V, T /R = 2.4 V (figure A)
R1 = lOOn, R2 = 1k, C1 = 300pF
17
27
ns
Propagation Delay to a Logical ,"1" from
tPDLHB A Port to B Port
CD = 0.4 V, T/R = 2.4 V (figure A)
Rl = lOOn, R2 = lk, C,,= 300p~.
15
23
ns
B Port Data/Mode Specifications
tPLZB
Propagation Delay f~om a L:;ogical "0" to
TRI·STATE® from CD to B Port
AO to A7 = 0.4 V, T/R = 2.4 V (figure C)
S3=l,R5=lk,C4=15pF'
25
40
ns
tPHZB
Propagation Delay from a Logical "1" to
TRI·STATE®from CD to B Port
AO to A7 = 2.4 V, T/R = 2.4 V (figure C)
S3 = 0, R 5 = 1k, C4 = 15 pF
16
25
ns
tPZLB
Propagation Delay from TRI·STATE® to
a Logical "0" from CD to B Port
AO to A7 = 0.4 V, T/R = 2.4 V (figure C)
S3 = 1, R5 = lOOn, C4 = 300pF
33
50
ns
tPZHB
Propagation Delay from TRI·STATE®to
a Logical "1" from CD to B Port
AO to A7 = 2.4 V, TIR = 2.4 V (figure C).
S3 = 0, R5 = lk, C4 = 300pF
16
25
ns
0-31
.....
AC 8ectrical Characteristics
continued
VCC = 5V, TA = 25QC
I
Param.eter
I I I I
Conditions
Min Typ Max
Units
TransmitiReceive Mode Specifications
tPHZR
Propagation Delay from a'Logical "1" to
TRI-STATE®from T/R to A Port
CD '= 0.4 V (figure B)
Sl = 1, R4= 100n;C3= 300pF
S2 = 0, R3 = 1k, C2 = 15 pF
14 '22
tPLZR
Prnpagation Delay from a Logi'cal "0" to
TRI·STATE® from T/R to A Port
CD = 0.4 V (figure B)
Sl = 0, R4 = lk, C3 = 300pF
S2= 1, R3= lk,C2= 15pF
20
Propagation Delay from a Logical "1" to
rRI-STATE® fromT/R to B Port
CD = 0.4 V (figure B)
Sl = 0, R4 =lk, C3 = 15pF
S2 = 1, R3 = 5k, C2 = 30pF
22
33
"s
tPLZT
,Propagation Delay from a Logical "O".to
TRI·STATE® from T/R to B Port
CD = 0.4 V (figure B)
Sl ='1, R4 = lk, C3 = 15pF
S2= 0, R3 = lk, C2 = 30pF
34
50
ns
tPRL
Propagation Delay trom Transmit Mode
to a Logical "0," T IR to A Port
tPRL = tPHZT + tpDHLA
46
70
ns
tPRH
Propagation Delay from Transmit Mode
to a Logical "1," T fR to A Port
tPHH = tpLZT +, tpDLHA
45
70
ns
tPTL
Propagation Delay from Receive Mode
to a Logical "0," T fR to B Port
tPTL = tPHZR + tpDHLB
31
50
' ns
tPTH
Propagation Delay from Receive Mode
to a Logical "1," T /R to B Port
tPTH = tPL.ZR + tpDLHB
35
50
ns
tPHZT
"
ns
30
ns
",
,"
Note1: "Absolute Maximum Ratings" are those values beyond which ,the safety of ,the device cannot,be guaranteed. Thev are not
meant to imply that the devicl'S should be operat~ at these limits~ The tables of "Electrical Characteristics" provide conditions for
actual device operation.
Note 2: Unless otherwise specified, min/max·limits apply across the 0° C to +70°C temperature range and the 4,75 V to 5.25 V power
supply range. All typical val ues given are for V CC ~ 5 V and T A = 25° C.
Note 3: All Currents into device pins are pOSitive; all currents out of device pins are negative. All voltages are referenced to ground
unless otherwise spec.ified:
_:
Note 4: Only onll output at a time should be shorted.
LogI~ and Connection Diagrams'
r------------,
,o-4-t?
'
~.D
Top View
I
AD
;
,
_ 1----- -____ ...I....r-o' B.
____
1-____ .__.;. ;;.. -___
...J"'""O
A.
:::J----AZ
~
A3
APORT
~____
__
_ ___
..J'"""'O
BZ
B3
:: 8:::::
1-____ ::
__ :::::::J=;::
___
AI
~
A1
0-;...____
BPORT
APORT
AO-'
20-VCC
A...... 2
19-BO
A2-3,
18-B1
A3-4
11-B2
A4- •
'Nsa20B
.a-B3
A5-6
15-84
,_~"
A6-1
14-B'
_ ___ ..J--O B1
A1-a
13-a6
CH'PDlSABLE- 9
12-B1
GND- ,10
11 -
i..
logic Table
Inputs
Chip Disable
o
o '
Resulting Conditions
Transmit/Recei.e
'0
A Port
B Port
OUT
IN
IN
x
TRI·STATE
x = Don't Care
TRI-STATE,
Note: INSB2DB is identical to the DPB3D4
0-32
BPORT
TRAN/ill
Switching Time Waveforms and AC Test Circuits
tr '" tf .;; 10ns
liIYoTO 9i1Yo
1,
INPUT
An OR 8n
OV
OUTPUT
Bn OR An
Vee
Vee
RI
INPUT
OUTPUT
DEVICE
UNDER
TEST
NOTE: CllNClUDES TEST FIXTURE CAPACITANCE.
FIGURE A. Propagation Delay from A Port to 8 Port or from B Port to A Port
tr = tf <; 100s
INPUT
10% TO 90".4
T/1i
OV
rOUTPUT
,
=-tr::~~:
,APORTl
I=-tr
'PHZT
PlZT
-
osv
---L
O,SV
--L
OUTPUT
B PO RT
I,
Vee
t---1----o B PORT
A PORT C>----1~-_I
S,:< 1
S2'" 1
Vee-+o
R3
R4
Vee
I •.,..
NOTE: C2 AND C31NCLUOE TEST FIXTURE
CAPACITANCE.
FIGURE B. Propagation Delay from T/R to A Port or B Port
0·33
~National
,APRIL 1978
~ Semiconductor
INS8212 8-Bit
Input/Output Port
General Description
Features
The INS8212 is an 8-bit input/output port contained in
a standard 24-pin dual-in-line package_ The device, which
is fabricated using Schottky Bipolar technology, is part
of National Semiconductor's INS8080A microprocessor
family. The INS8212 can be used to implement latches,
gated buffers, or multiplexers. Thus, all of the major
peripheral and input/output functions of a microcomputer system can be implemented with this device.
• 8-Bit Data Latch and Buffer
• Service Request Flip-Flop for Generation and Control
of Interrupts.
• 0.25 mA Input Load Current
• TRI-STATE TTLOutp\lt Drive Capability
• Outputs Sink 15 mA
• Asynchronous Latch Clear
• 3.65V Output f9r Dire.ct Interface to INSS080A
• Reduces System Package Count by Replacing Buffers,
Latches, and Multiplexers in Microcomputer Systems
• MICROBUSTM* Compatible
The INS8212 includes an 8-bit latch with TRI-STATE®
output buffers, and device selection and control logic.
. Also included is a service request flip-flop for the generation and control of interrupts to the microprocessor.
INS8212 MICROBUS Configuration
~
07-00
INTR
OOB-OOI
~
~
Rm'f
CPU
GROUP
DATA
BUS
CONTROL
..
OS2 lNSB212
CLR
PERIPHERAL
..r1.
OSI
STB
MO
~
ADDRESS
BUS •
-,-
DIB~DII
TNT
M
I
C
R
0
.B
U
S
..
D7-0B
~
~
INTR
-RESET
CS
Lr
DIB-DI1
INT
~Os-~Ol
CLR INS8212
DS2
OS1
STS
MO
"'A
"1"
*Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
0-35
PERIPHERAL
.J"""L
I •.,;.w
Absolute Maximum Ratings
Temperature Under Bias Plastic ..... -65°C to +75°C
Storage Temperature" ..•....• ; -65°C to +160°C
All Output or Supply Voltages. . . . . .. -0.5V to +7V
All Input Voltages ............... -1.0Vt05.5V
Output Currents .. '. . . . . . . . . . . . . . . . . .. 125 mA
Note: Maximum ratings indicate limits beyond which. ~'rmanent damage may occur. Continuous operatioo at these Ilmi.ts is not intended and
should be limited to those conditions specified under de electrical characteristics.
,
,
.
DC Electrical Charac.ristiC$
TA = o°c to +75°C; Vee = +5V± 5%
Symbol
limits
Parameter
Min.
Typ.
Max.
Unit
Test Conditions
IF
Input Load Current
STB,OS2, CLR, Ol,,-Ols Inputs
-0.25
mA
VF = 0.45V
IF
I nput Load Current
MO Inpu~
-0..75
mA'
VF = 0.45V
IF
Input Load Current
Ds,lnpul
-1.0
mA
VF = 0.45V
IR
Input Leak~Current
STB, OS2, c::LR, OI,-OISlnputs
10
IdA
VR ,=.5.25V
IR
Input Leakage Current
MO Input
30
p.A
VR = 5.25V
IR
os, Input
40
p.A
VR = 5.25V
V
Ie = -5mA
I nput
Lea~a!Jl!
Current
"
Ve
Input ForwardVoltl!.ge Clamp
VIL
Input "Low" Voltage
VIH
Input "High" Voltage
VOL
Output "Low" Voltage
VOH
Output "High" Voltage ,
Ise
Short Circuit Output Corrent
1101
Output Leakage Current
High Impedance State
lee
Power Supply Current
,r
-1
051, MO Input Capacitance
COUT
0.45
V
"
10L = 15mA
V
10H=-lmA
-75
mA
Vo'= OV
20
p.A
Va = 0.45V/5.25V
130
mA'
V
3.65
4.0
-15
90
F = 1 MHz, VSIAS = 2.5\;, Vee =);~V, TA = 25°C
. Test
V
:;1:0
Capacitance*
Symbol
0.S5
Limits
Typ.
Max.
9pF
'12pF
OS2, CLR, STB, 011-01S Input CapacitanCjl
5pF
9pF
001-00S Output Capacitance
SpF
12pF
*This parameter is sampled and not 100% tested.
,0-36
AC Electrical Characteristics
TA
= o°c to +75°C.
Symbol
Vee
= +5V ± 5%
Parameter
Min.
Limits
Typ.
Max.
Units
tpw
Pulse Width
tpD
Data to Output Delay
30
ns
tWE
Write Enable to Output Delay
40
ns
tSET
Data Setup Time
15
tH
Data Hold Time
20
tR
Reset to Output Delay
ts
Set to Output Delay
30
ns
tE
Output Enable/Disable Time
45
ns
te
Clear to Output Delay
55
ns
30
Test Conditions
ns
ns
ns
40
ns
Switching Characteristics
Conditions of Test:
1. Input Pulse Amplitude = 2.5V.
2. Input Rise and Fall Times = 5n5.
3. Between 1 V and 2 V Measurements made at 1.5V
with 15mA & 30pF Test Load.
Test Load
15mA& 30pF
Alternllte Test Load
Vee
Vee
300
10.
::]
TO
:::'f
TO
»
600
.
1•
~
~
* including jig & probe capacitance
0·37
'·fJl
Timing Diagram
.__________'5:",,-", _
X
~'------------
DATA
STBORDS,.DS2
---,
5V
·.LI·-tH~ "'-------
.. j;==tPw____
~15Z-
__
"5V
------~--------~
____________________ . . . __ .." 1~.5_V_____..,..----
I---- tWE::l
OUTPUT
~Sl.DS2______'-.J57C
lI~
--------
~5V
.
_,"::x-~""~'""'"""-J:::-~-~--~-:~-~---~----:--.--O..t!V VOH
OUTPUT__-_-_-__-_-__-_-__.!::_:.
=-------------~~ j'
~I--- tPW----II
f
"0. _
15 V
I-00
._------
te
•
5V
O.5V
'I,,.--------)E
_____________________ ..J
'
15V
-
----~
X'-----------X
5V
-::-;:--_ _-f=~tSE::..:T=--l--"
1'--STBOROS,.OS2
~I --tH-----l -------~
'5V
DATA
. __________ j
.
1.5V
x
tPD~
l,,-------
OUTPUT
________________, 1.5V
STB
,
'
--------
---------
1.5V, .r--\.
__---,,1:
"\.1.5~-----I---t""':
V
DS1·0S2
1.5V
1.5V
tR.....!
D·38
VOL
INS8212 logic Diagram
DEVICE SELECr
IJI>
IJI>
0:::>
ST.
CLR
MO
DO,
£I>
004.
[]I>
01,
DO,
IJI> '
DI> 01,
DO,
or>
CIT>
DO,
rn::>
Logic Table A
---r-----T
STB
MO:
OATA OUT
EQUALS
IOS,·OS2)
CI>01,
TRI·STATE
TRI·STATE
~---------~-----------D-A-TA--LA~T~C~H-~
DATA LATCH
a
DATA LATCH
DATA IN
DATA IN
DATA IN
CLR '"""'\... resets data latch to the output low state.
DI>
Logic Table B
~--r(D~.Ds;I
a RESET
o
o
o
srn-ra-:-Tliii---0'
0
1"",-1
0
t------t---c---+---+---r--1 RESET
,
0
"Internal Service Request flip-flop.
01,
INS8212 Functional Pin Definitions
The foilowing describes the function of all the INS8212
input/output pins. Some of these descriptions reference
internal circuits.
enabled and the service request flip-flop is asynchronously
reset (cleared) when the device is selected.
Mode (MO): When high (output modeL the output
buffers are enabled and the source of the data latch
clock input is the device selection logic (OS1' OS2).
When low (input mode), the state of the output buffers
is determined by the device selection logic (OS1 . OS2)
and the source of the data latch clock input is the strobe
(STB) input.
INPUT SIGNALS
Oevice Select (OS1, OS2): When OS1 is low and OS2 is
high, the device is' selected. The output buffers are
D-39
.·1'11
INS8212 Func:tional Pin Definitions
continued
Strobe (STS): Used as data latch clock input when the
mode (MO) input is low (input mode). Also used to synC
chronously set the service request flip-flop, which is
negative edge triggered.
Pin Configuration
Data In (011-018): Eight-bit data input to the data
latch, which consists of eight O:type flip-flops. While the
data latch clock input is high, the Q output of each flipflop follows the data input. When the clock input
returns low, the data latch stores the data input. The
clock input high overrides the clear (CLR) input data
latch reset.
.
os;
Clear (CLR): When low, asynchronously resets (clears)
the data latch and the service request fl ip-flop. The
service request flip-flop is in the non-interrupting state'
when reset.
Vee
23
01,
22
01 8
DO'
2,
008
01 2
20
01,
002
'9
DO,
01 3
'8
01 6
003
17
006
'6
015
INS8212
01,
OUTPUT SIGNALS
Interrupt (INTI: Goes low (interrupting ,state) when
either the service request flip-flop ,is synchronously set
by the strobe (STB) input or the device is selected.
Data Out (0°1-0°8): Eight-bit data output of data
buffers, which are TRI-STATE, non-inverting stages.
These buffers have a common control line that either
enables the buffers to transmit the data from the data
latch outputs or disables the buffers by placing them in
the high-impedance state.
TNT
MO
004
'0
'5
005
STB
11
14
Clli
GNO
'2
'3
052
NOTE: INS8212
Identical to
DPB212
Applications in· Microcomputer Systems
Bidirectional Bus Driver
Vce
Gated Buffer
(TRI-STATE)
S B
r ......---,OATA
DATA r----"-.I
BUS'--x_ _yl
vce-.....- _ _ _ _ _--,
8US
STB
INPOT
DATA
(250,AI
GATING
CONTROL
DATA BUS
CONTROL
OUTPUT
DATA
(15mA)
(l.65V MIN)
(0 = l ~ R)
(I = R ~ L)
F
1=------.. . ---..
GNO
0-40
Applications in Microcomputer Systems
continued
Interrupting Input Port
S~~~~~ . .- - - . ,
{FROM INPUT
Interrupt Instruction Port
DATA
BUS
VCC
STB
DEVICE}
SYSTEM
INPUT
RESTART
INSTRUCTION
(RST 0 ~ RST7)
SYSTEM
RESET
I-
PORT
SELECTlDN1=,.-_ _ _ _..J
TO PRIORITY CKT
(ACTIVE LOW)
DR
INTERRUPT ACKNOWLEDGE _ - - -......
TO CPU
INTERRUPT INPUT
Output Port (with Hand-Shaki~g)
DATA
BUS
. - - -....,... OUTPUT STROBE
(HAND-SHAKING
SIGNAL FROM
OUTPUT DEVICE)
STB
SYSTEM OUTPUT
SYSTEM RESET
i=1 PORT SelECTION
'-----'!:J (LATCH CONTROL)
INS8080A Status Latch
~"
0, 9
0, 8
03
04
05
06
0,
INS8(J80A
SYNC
.,
12V
ov J
.,
081N
21
n
\...-~
0,
0,
OJ
'
3
4
5
6
03
0,
0,
06
0,
lL.!.LSTATUS
LATCH
15
---t 01
'-----f
.----..,
00
'----]
1
18
INS8212
20
CLOCK GEN
& DRIVER
DATA BUS
~LI
22
fi g~~ MD DS1
131' Y'
----.I
Vee
D-41
~ INTA
ri- Wli
HLTA
~
OUT
~
11
M'
'NP
~ MEMR
rll-
STACK
CSIN
BASIC
CONTROL
BUS
DATA
STATUS
I---"-+-+r-,.---t-'''----i
DATA
BUS
~
Physical Dimensions
'$
C.
'$
1.290
1---------(32.766) - - - - - - - - 1 -
0,600
(15,240)
I
MAX
fMAX
r-=-='-",.....=='-'-""-'-:.:J,..=..L:.:J..J.:~==-II GLASS
~c.
0,025
(0,635)
0,515-0,525
RAD
c
081
:t::
'-T-:-r-r"...,.,.,-r,:-r-,."."T":T"1=-r.:T"'T':'T"T.':',.."".,..=....... (13,
toI
CO
N
N
CO
,...
U)
;::
r
~~
0,685 '0,025
f - - - - (17,399 '0,635)
~I
3
'335J
0,200
(5,080)
0,160
0,590-0.620 § 1 j 4 )
If--c: (14,986-15.748)
MAX
II
f
J·
0,008-0,012
(0,203-0.305)
r-:'"
_
I
0.060-0,100
(1.524-2,540)
(0,508-1,778)
_II _
0,018'0.002
11(0,457,0,051)
t--
0,125
(3,115)
MIN
Ceramic Dual-in-Line Package
(J)
Order Number INS8212J
1.270
(32.258)
------~·..jl
MAX
13
1
0,062
(1,575)
0,540'0,005
RAD
0.030
(0762)
MAX
0,075
(1 905)
0040.
-160.0005
°
~~~L
.---L
I
0,009-0015
(0229-0381)
0075'0015
(1905'0381)-
I
1-
-I
f--~v~401
0,100
0018'0,003
--If--I0457'0,076)
0015
0125 iOJaij
(3,175) MIN
MIN
Epoxy DuaHn-Line Package {N}
Order Number INS8212N
National Semiconductor
Corporation
2900 Semiconductor Onve
Santa Clara. California 95051
Tel. (40a)' 737-5000
TWX' (910)339·9240
National SemIconductor GmbH
8000 Munchen 21
61f2fisenl'ieimerstrasse
·,·WestGermany
1el.089/915027
Telex. 05-22772
NS Inlernalionallnc., Japan
NS Eleclronics{Hong Kong) lid.
HSElectronics Do Brasil
NS ElaclrenicsPly.lId.
Miyake Buildmg
1-9Yotsuya. Shlfljuku-ku 160
Tokyo,Japan
Tel: (03) 355-3711
TWX. 232-2015 NSCJ-J
SthFloor,
Avda Bngadel¥oFan3 LlmaB44
11 AndarConJunto 1104
Jardlm Paullslano
SaoPauJO,Brasll
Telex' 1121006 CABINE SAO PAULO
Cm Stud Rd & Min Highway
Cheung Kong ElectroniC Bldg
4 Hmg VIP Street
Kwu~ Tong
KOWloon. Hong Kong
1eI3'411241-8
Telex 73866 NSEHK HX
Cable NATSEMI
Bayswater, Vlctona 3153
Australia
Tel 03-729·6333
Telex' 32096
National does not assume any responsibility for use of any circuitry described, no CIrCUit patent licenses are Implied and National reserves the fight. at any time without notice. to change said circuitry.
0-42
'
AUGUST 1978
~National
~'Semiconductor
INS821618226 4-Bit Bidirectional
Bus Transceivers
General Description
The OlEN input controls the direction 01 data flow,
which is accomplished by forcing one of the pair of
buffers into its high-impedance state and allowing
the other to transmit its data. A simple two-gate
circuit is used for this function.
The INS8216 and INS8226 are four-bit bidirectional
bus drivers for use in bus oriented applications. The
non-inverting INS8216 and inverting INS8226 drivers
are provided for flexibility in system design.
Each buffered line of the four-bit driver consists of
two separate buffers that are TRI-STATE'" to achieve
direct bus interface and bidirectional capability. On
one side of the driver the output of one buffer and the
input of another are tied together (DB);' this side is
used to interface to the system side components
such as memories, 1/0, etc., because its interface is
TTL compatible and it has high drive (50mA). On the
other side of the driver the inputs and outputs are
separated to provide maximum flexibility. Of course,
they can be tied together so that the driver can be
used to buffer a true bidirectional bus. The DO
outputs on this side of the driver have a special high
voltage output drive capability so that direct interface to the 8080 type CPUs is achieved with an
adequate amount of noise immunity.
Features
• Data bus buffer driver for 8080 type CPUs
• Low input load current -
• Power up-down protection
• The INS8216 has non-inverting outputs.
• The INS8226 has inverting outputs.
• Output high voltage compatible with direct inter·
face to MOS
'
• TRI·STATE outputs
The CS input is a device enable. When it is "high" the
output drivers are all forced to their high-impedance
state. When it is a "low" the device is enabled and
the direction of the data flow is determined by the
OlEN input.
• Advanced Schottky processing
• Available in military and commercial temperature
ranges
• MICROBUSTM' compatible
INS821618226 MICROBUS
Configuration
Logic Diagrams
DlO
INsa2lS/8226
USER
INPUTS
3-0
0.25mA maximum
• High output drive capability for driving system
data bus - 50mA at 0.5V
Dlo
DBo
DBO
000
DOo
0]-00
OBJ-DBO
mrn
01,
OUTPUTS
3-D
M
00,
0.,
DO,
01,
I
C
R
0
DI,
lOB,
USER
ilTEN
01,
0.,
DB,
e!,
DO,
B
U
S
DI,
DI,
DB,
IllEN
USER
INPUTS
).,
083- 0BO
USER
OUTPUTS
J.4
DB,
DO,
D03
iiTEN
OlEN
07-04
cs
INsa21S
INSB216/122S
'Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
0-43
INS8226
'"
II."
Absolute Maximum Ratings
All Output and Supply Voltages
All Input Voltages
Output Currents
Lead Temperature
(soldering, 10 seconds)
Storage Temperature
Power Dissipation'
Cavity Package
Molded Package
Min
-0.5
-1.0
-65
Operating Conditions
(Note 1)
Max
+7.0
+5.5
125
+300
Units
V
V
mA
Supply Voltage, Vcc
INS8216, INS8226
4.75
'c
Temperature, T A
INS8216, INS8226
0
+ 150
'c
1160
1000
Min
Max
5.25
+70
Units
V
'c
mW
mW
"Derate Cavity Package at BO·C/W above 70'C;-derate Molded
Package at 90'C/W above 70'C_
,
DC Electrical Characteristics Vcc = 5V
,
± 5% (Notes 2, 3, and 4)
Limits
Symbol
Parameter
Conditions
Min
Typ
Max
Units
DRIVERS
VIL
Input Low Voltage
ViH
Input High Voltage
IF
Input Load Current
VF
fR
Input Leakage Current
V R ::: 5.25V
Vc
Input Clamp Voltage
Ic
VOL1
Output Low Voltage
10L = 25mA
0.3
0.45
V
VOL2
Output Low Voltage
INS8216 INS8226 -
0.5
0.6
V
VOH
Output High Voltage
10H = -10mA
Isc
Output Short Circuit Current
Vcc
1101
Output Leakage Current TRI·STATE
Va = 0.45V/5.5V
0.95
2
= 0.45V
=
-0.03
= 5.0V
-0.25
mA
10
JAA
-1.2
-5mA
10L ::: 55mA
10L = 50mA
V
V
2.4
3.0
-30
-75
V
V
-120
100
mA
JAA
RECEIVERS
V1L
Input Low Voltage
V 1H
Input High Voltage
IF
Input Load Current
VF
Vc
Input Clamp Voltage
Ic = -5mA
VOL
Output Low Voltage
10L = 15mA
0.95
2
= 0.45V
=
VOH1
Output High Voltage
10H
Isc
Output Short Circuit Current
Vo::: OV
1101
Output Leakage Current TRI·STATE
Vo
-1mA
-0.08
0.3
3.65
-15
V
V
-0.25
mA
-1.2
V
0.45
4.0
-35
= 0.45V15.5V
V
V
-65
mA
20
JAA
0.95
V-
CONTROL INPUTS (CS, OlEN)
V 1L
Input Low Voltage
V1H
Input High Voltage
IF
Input Load Current
VF = 0.45V
IR
Input Leakage Current
VR ::: 5.25V
Icc
Power Supply Current
INS8216
INS8226
2
V
-0.15
95
85
D-44
-0.5
mA
20
JAA
130
120
mA
mA
.-
AC Electrical Characteristics
(Notes 2, 3, and 4)
Limits
Symbol
Parameter
INS8216/8226 -
= 5.0V
Vee
Conditions
Typ
Max
Units
15
25
ns
20
16
30
25
ns
ns
45
35
65
54
ns
ns
20
35
ns
± 5%
= 30pF, R1 = 300Q,
= 600Q
= 300pF, R2 = 90Q,
= 180Q
t p01
input to Output Delay, DO Outputs
CL
R2
tp02
Input to Output Delay, DB Outputs
INS8216
INS8226
CL
R2
Output Enable Time
INS8216
INS8226
DO Outputs: C L
R1 = 300Q/10kQ,
R2
600Q/1 kQ
tE
Min
= 30pF,
=
= 300pF,
=
=
C L = 5pF,
R, = 300Q/10kQ,
R2 = 600Q/1 kQ
DB Outputs: C L = 5pF,
R1 = 90Q/10kQ,
R2 = 180Q/1 kQ
DB Outputs: C L
R1
90Q/10kQ,
R2
180Q/1 kQ
to
Output Disable Time
Note 1: "Absolute Maximum Ratings" are those values beyond which the safety of the device cannot be guaranteed. They are not
meant to imply that the devices should be operated at these limits. The tables of "Electrical Characteristics" provide conditions for
actual device operation.
Nota 2: Unless otherwise specified, minimax limits apply across the O'C to + 70'C temperature range for the INS8216 and INS8226. All
typical values are given for Vce = 5V and TA = 25'C.
Note 3: All currents into device pins are positive; all currents out of device pins are negative. All voltages are referenced to ground
unless otherwise specified.
Note 4: Only one output at a time should be shorted.
Capacitance
TA
= 25'C
Note: This parameter is periodically sampled and is not
100% tested. Condition of measurement is f = 1MHz,
VSIAS = 2.5V, Vec = 5.0V, and TA = 25 'C.
Limit
Symbol
Min
Parameter
C,N
Input Capacitance
COUT
Output Capacitance
DO Outputs
DB Outputs
Max
Units
4
6
pF
6
13
10
18
pF
pF
Typ
Test Conditions
Test Load
Input pulse amplitude of 2.5V.
Input rise and fall times of 5.0ns between 1.0V and 2.0V.
Output loading is 5.0mA and 10pF.
Speed measurements are made at 1.5V levels.
Cl
¥'V
,v
i--tpo-I
~'V
I
1---'-1, ---.1
OUTPUTS
R2
3V
I
OUTPUT
[NABLE
.,
OUT
SWitching Time Waveforms
INPUTS
I
Cim~;
)('V
X'V
1-'01~
I
VOH
~VOl
I
D-45
3V
OV
I.W.
f~
Pin Configuration
.~
U)
CHIP SElECT
cs
16
Vee
DATA OUTPUT
DOD
15
DlEN
DATA BUS
s:::
,.
DBo
BIDIRECTIONAL
!lATA IN ENABLE
(DIRECTION CONTROL)
003
DATA OtiTPUT
DB,
DATA BUS
C\'I
D~TA INPUT
010
DATA OUTPUT
001
13
INS821S1
8226
11
Oil
DATA INPUT
DATA BUS
DBl
11
002
DATA OUTPUT
U)
BIDIRECTIONAl
01,
10
DB2
DATA BUS
.:
:::s
DATA INPUT
m
GNO
012
BIDIRECTIONAL
BIDIRECTIONAL
DATA INPUT
NOTE: THE INS8216/8226 ARE
IDENTICAL TO THE
DP8216/6226.
Physical Dimensions
inches (millimeters)
0.185
1---
0.310
-I
09.939)
MAX
!
0.025
(7.874)
[MAX
-- --
fu~~·~
GLASS
11.291
a:J911
MAX
~
11.290-0.320
(7.366-8.128)
0.150
(4.1164)
GLASS
SEALANT ~
r-----"-l__
~
MA~
'_1
--
.
.
-
-
0.008-0.012
iO.203-03D51
MAX
10.127)--; i- "'_ IV1AX
0.070-.0.070
~' _lmj'T7il
I
+-
I.
_~5~
-J'e-- I
(1.210)--
I
i
0.l85 '0.1115
'-----(9.779 0.635)
~
(5.080)
a.060 '0.0115
~.524
II
i
I I
~
I
.---
~018 '0.002
II
.;__
(iI.457 --;0:051) --',
----,-t-
~~:~~: :~:~~.:)
---I
0.125
(i175j
MIN
l6·Lead Cavity DIP (J)
Order Numbers INS82l6J, INS8226J
NS Package Number J16A
0.870
-(22.0981--·-MAX
0.092
l6·Lead Molded DIP (N)
Order Numbers INS82l6N, INS8226N
NS Package Number N16A
Note: The IN$821618226 are identical to the DP821618226.
Nalir.mal Semlcondiictat
Corporation
290D Semiconductor Drive
Santa Clara, California 95051
Tel.: (408) 737-5000
TWX, (9101 339·9240
NatiollJl Semiconductor GmbH
8000 Munchen 21
Eisenheimerslrasse 61/2
West Germany
. Tel.: 089/9'15027
Telex: 05-22772
NS International Inc., Japan
Miyake Building
1-9 Yotsuya. Shinjukllcku 160
Tokyo, Japan
Tel.: (03) 355-3711
TWX: 232-2015 NSCJ-J
National Semiconductor
(Hong Kong) Ltd.
81h Floor,
Cheung Kong .Electronic Bldg
4 Hlng Yip Street
Kwufl Tong
Kowloon, Hong Kong
Tel.: 3-411241-8
Telex: 73866 NSEHK HX
Cable: NATSEMI
NS Electronics Dc Brasil
Avda Brigadelro Faria lima 844
11 Andar Conjunto 1104
Jardim Paulistano
Sao Paulo, Brasil
Telex:
112..1008 CABiNE SAO PAULO
NS Elletronlcs Ply. ltd.
Cnr. Stlld Rd. & Mtn. Highway
Bayswater, Victoria 3153
Australia
Tel.: 03-729·6333
Telex: 32096
National does not assume any responsibility for use of any circuitry d6SGribed; no circuit palefi! licenses are implied, and National reserves the right, at an1 time withOut notice, to change said circuitry.
0-46
APRIL 1978
~National
-z
~ Semiconductor
en
(X)
INS8255 Programmable Peripheral Interface
(II
(II
N
""CJ
General Description
The INS8255 is a programmable peripheral interface
contained in a standard, 4().pin dual·in·line package. The
chip, which is fabricated using N·charinel silicon gate
technology, functions as a general·purpose parallel
input/output interface in National Semiconductor's
N8080 microcomputer family. The functional configura·
tion of the INS8255 is programmed by the system
software so that normally no external logic is required to
interface peripheral devices.
signals with the peripheral device. In the third mode
(Mode 2), the INS8255 enables communications with a
peripheral device or structure via one bidirectional 8·bit
bus port (Port A). "Handshaking" signals are provided
over the lines of Port C in this mode to maintain proper
bus flow discipline.
The INS8255 has three basic modes of operation that
can be selected by the system software. In the first mode
(Mode 0), the INS8255 provides simple input and
outqut operations for three 8·bit ports. Data is simply
written to or read from a specified port (port A, 8 or C)
without the use of "handshaking" signals. In the second
mode (Mode 1), the INS8255 enables the transfer of
input/output data to or from a specified 8·bit port
(Port A or BI. in conjunction with strobes or "hand·
shaking" signals. Ports A and B use the lines of Port C in
this mode to generate or accept the "handshaking"
Features
• Outputs Source 1 mA at 1.5 Volts
• 24 Programmable Input/Output Pins
• Direct Bit Set/Reset Capability
• TTL Compatible
•
Reduces System Component Count
• MICROBUSiM * Compatible
INS8255 MICROBUS Configuration
c8
iil
3
3
m
...
"6"
C"
CD
""CJ
CD
::::T
CD
-i;D1
(")
CD
ADDRESS
BUS
DATA
BUS
CPU
GROUP
CONTROL
BUS
Typical Diagram of MODE 0 operation. The 8 bit ports A, B. C
are defined by the user's program to be either an input or an
output from/to the peripherals.
*Trademark. National Semiconductor Corp.
© 1978 National Semiconductor Corp.
0·47
'1•.1
DC Electrical Characteristics
Symbol
Min.
Parameter
VIL
Input Low Voltage
V 1H
Input High Voltage
VOL
Output Low Voltage
V OH
Output High Voltage
Typ.
Max.
Unit
0.8
V
Test Conditions
:
'.
V
2.0
--;-
IOH[l]
Darlington Drive Current
Icc
Power Supply Current
V
IOL =.1.6mA
V
IOH = -50,uA (-100/1A for D.B. Port)
2.0
mA
VOH= 1.5 V, REXT = 390n
40
mA
0.4
-
2.4
---- I-----
NOTE:
1. Available on 8 pins only of ports Band C. Selected randomly.
AC Electrical Characteristics
Symbol
-
Parameter
Min.
Typ.
Mal<.
Unit
tww
Pulse Width of WR
400
ns
tow
Time D.B. Stable before WR
50
ns
two
Time D:B. Stable after WR
35
ns
tAW
Time Address Stable before WR
20
ns
tWA
Time Address Stable after WR
20
tcsw
Chip Select on to WR
tWB
Delay from WRto Output
tRP
Pulse Width of RD
405
ns
tlR
RD Set-Up Time
0
ns
ns
450
'.
500
100
ns
ns
tHR
Input Hold Time
tRD
De!ay from R 0 = 0 to System
B~s
295
ns
ns
tRH
Delay from RD =.1 to System Bus
150
ns
tHZ
RD = 0 to TRI.STATE oLBus Drivers
150
ns
tAR
Time Address Stable before RQ
tCSR
Time CS Stable before R 0
tAK
Width of ACK Pulse
tST
tps
10
..
ns
50
70
ns
500
ns
Width of STB Pulse
500
ns
Set-Up Time for Peripheral
60
ns
tPH
Hold Time for Peripheral
180
ns
tRA
HolE...Time, Address Bus Trailing Edge
to RD
0
ns
tRC
Hold Time for CS after RD = 1
5
tAD
Address Bus Valid to Data Valid
ns
400
ns
tKD
Time from ACK = 1 to Output Floating
480
ns
two
Time from WR = 1 to OBF = 0
650
ns
tAO
Time from ACK = 0 to OBF = 1
450
ns
tSI
Time from STB =0 to IBF
450
ns
tRI
Time from RD = 1 to IBF = 0
360
ns
tACSO
Address Bus Valid to CS
40
ns
tACSl
Address Change to CS OFF
40
ns
20
0-48
I
Test Conditions .'
Timing Waveforms
.
tRP---_
-~
---'f;:
r--tjR---------
.-tHR~1
INPUT
__
r
)
tACSO-----..-..
cs
_ _ tRA--------......,.
tAR_~_
K
~
tCSR
I
-----------------
07- 00
tACSl
-----tRA----
--
)
1~--~---~:_:_-tRO--=
tRH~--~-__1
0-
-"-tHZ---~
Mode 0 (Basic Input)
.
\oVR
'WW----~
~r
C
-c r-
=!
I--tWO
tDW -
07-00
tAW
~-"--~'WA--~
-~
=> r-tcsw
K=
.
tACSO-
~
OUTPUT
twB
Mode 0 (Basic Output)
__
-~tST
__
STB------------~
IBf _ _ _ _ _ _ _ _ _ _- - 1
INTR
----------------1--'
Ro--------~---------I------~
_---tps-_~
Mode 1 (Strobed Input)
0-49
____ tACSl
Timing Wavefonns (confd.)
w. - - - - - - - - -...
0IfF-----~----_+--~---~-~
INTR
----------+--""
Mi----------------+---------------~----~
OUTPUT
Mode 1 (Strobed Output)
i'VR---",
OBF---------~~--+_-'"
INTR - - - - - -.........,.
~----------------------+-~I
STi------________
'1
"F ----___________
~
~
~
E
H
P
I
R
E
P
..,(1
_______________ _
.Ro------~----------------_r--~--~~----------~----...,.
DATA FROM
PERIPHERAL TO 8266
Mode 2 (Bidirectional)
0:50
INS8255 Block Diagram
t
I
r-
......
""-
GROUP
A
CONTROL
GROUP
A
PORT
A
""-
:...
1/0
...... PAl
- PAO
r 131-40.1-4)
(8)
f-
I
l
.
07 - DO
127-34)
+-+
OATA
BUS
BUFFER
+
GROUP
A
PORT C
UPPER
(4)
~
.....
1/0
PCl -PC4
110-13)
.....
1/0
PC3- PCO
114-171
I-
...
8-BIT
INTERNAL
OATA 8US
...
t
r
GROUP
B
PORT C
LOWER
(4)
~
l-
t
I
AD
~
WR ~
AI
AO
RESET
~
~
~
REAO/
WRITE
CONTROL
LOGIC
GROUP
B
CONTROL
~
(26)
POWER
SUPPLIES
......
.tL
.-
...
I
(6)
1--.J!l.....-
I-~
+5 V
GND
GROUP
B
PORT B
(8)
~
I/O'
PB1-PBO
~ 118-25)
Ij
NOTE. APPLICABLE PINOUT NUMBER{;
ARE INCLUDED WITHIN
.
PARENTHESES.
INS8255 Functional Pin Definitions
The following describes the function of all the INS8255
input/output pins. Some of these descriptions reference
internal circuits.
bits of the A 15 - AO Address Bus, control the selection
of one of three 8·bit ports (A, B and C) or the internal
control word register as indicated below_
INPUT SIGNALS
A,
Ao
Selected
Chip Select (Cs), Pin 6: When low, the chip is selected.
This enables communication between the INS8255 and
the I NS8080A microprocessor.
0
0
1
1
0
1
0
1
Port A
Port B
Port C
Control Word Register
Read (RD), Pin 5: When low, allows the INS8080A to
read data or status information from the I NS8255.
Write (WR), Pin 36: When low, allows the INS8080A to
write data or control words into the INS8255.
Port Select (AO, A1 ),'Pins 9 and 8: These two inputs,
which are normally connected to the least significant
.
Reset, Pin 35: When high, clears all the internal registers
of the chip and sets Ports A, Band C to the input high
impedance mode.
+5 Volts, Pin 26: VCC supply.
Ground, Pin 7: O-Volt reference.
0·51
'1.1
INPUT/OUTPUT SIGNALS
and B. The system software includes a Bit Set/Reset
Control Word (see figll'e) for setting or resetting any of
the eight bits of Port C_ When Port C is being used· as a
status/control for Port A or B. the Port C bits can be set
or reset by using the Bif Set/Reset Control Word as the
second byte of OUT Instruction(s).
Data (07-00) Bus. Pins 27-34: This bus comprises eight
TRI-STATE input/output lines, The bus provides bidirectional communication between the I NS8255 and
the I NS8080A_ Data is routed to or from the internal
data bus buffer upon execution of an OUT or IN
Instruction, respectively. by the INS8080A. In addition.
control words and status information are transferred
through the data bus buffer.
Pin Configuration
Port A (PA7-PAOl. Pins 37~40. 1-4: This 8-bit input!
output port forms one 8-bit data output latch/buffer
and!or one 8-bit data input latch. .
PA3
PA2
PA,
PAo
NOTE
The system software uses a Mode Definition
Control Word (see figure) as the second byte of
OUT Instruction(s) to program the functional
configuration of Ports A through C.Whenever the
mode is changed. all output registers (and status·
flip-flops) are reset.
RD
E
GNO
A,
AO
'PC7
Port B (PB7-PBO). Pi~s 18-25: This 8-bit input/output
port forms one 8-bit data output latch/buffer or one
8-bit data input buffer.
"., I.. ..I
MSW
\~-_----'r- __..JI
flAG:
'
1 = ACTIVE
MODE SELECTION:
00 = MODE 0
01 =MODE 1
IX' MODE 2
'0
Pe6
PCs
PC4
PCO
PC,
Port C (PC7-PCO). Pins 10-17: This 8-bit input/output
port forms one 8-bit data output latch/buffer or one
8-bit data input buffer. The port can be split into two
4-bit ports under the mode control. Each of these 4-bit
ports contains a 4-bit latch that may be used for the
control and status signals. in conjunction with Ports A
11
03
'3
,4
'5
'6
,9
20
02
RESET
00
0,
02
03
04
05
06
07
VCC
PB7
0,
DO
PORT B:
l ' INPUT
0= OUTPUT
PORT C
ILOWER):
1 = INPUT
0= OUTPUT
PB6
PB5
PB4
PB3
I
PORT A:
1" INPUT
0= OUTPUT
MODE
SELECTION:
O'MODEO
\ 1 = MODE 1
PORTe
IUPPER):
l ' INPUT
0= OUTPUT
I
GROUP B
\~____________~I____________- - J
1
GROLIPA
Mode Definition Control Word Format
I · I .. I .. I
01
00
SET7~1sET \~--~--.,-__-,-_-,I \\.._--_--,,:-------JI SETI~lSET:
FLAG:
0= ACTIVE
Wi!
3'
30
29
28
27
26
25
24
23
22
21
INS8255
,2
PC2
PC3
PSo
PS,
PB2
04
PA4
PAS
PA6
PA7
39
38
37
36
35
34
33
32
°
NOTUSED
BIT SE'LECT:
000 =
001 =1
010= 2
011 =3
100' 4
101 =5
110 =6
11.1 = 7
Bit Set/Reset Control Word Format (Port COnly)
0-52
1 = SET
0 = RESET
1
Operating Modes
Mode 0 (Basic Input/Output)
In this mode, simple input and output operations for each of the three ports are provided. No "handshaking" is required; data is
simply written to or read from a specified port.
-,-----------------=t=--
Mode 0 Port Definition Chart
i
No.
Control Word Bits
r;-r~~-fo:-l
o
1
n 0- at
I
-1-f----,~-1
3
I
0
6
1
0
~:_;l--~~~~~--;~rtB
0
i
0
0
OUTPUT
OUTPUT
OUTPUT
0 -----+
0
1
OUTPUT
au-TPUT
OUTPUT
INPUT
0
0
0
1
0
OUTPUT
OUTPUT
INPUT
OUTPUT
0
I
0
0
_~l
I 1
h
1
I
0
0
1
1
OUTPUT
OUTPUT
INPUT
INPUT
0
OUTPUT
INPUT
OUTPUT
OUTPUT
0
1
OUTPUT
INPUT
OUTPUT
INPUT
+--~-+--~m~ 0 1 L~ OUTPUT INPUT INPUT
1 I ~~i
1 tyUTPU-r+INPUT-I-NPUT
t_o _
___8 __ ~_
0_ I 1
0
~_ ~-+---~r------:+_L~_I_~-t1-- ~ 0
0 I 1
-
1~-
-'2
I
I
0
1[
0
0
1
0
1
0
0 --J-1
1
I
0 I
o I
1
1
1
1
I
13
1
0
14
1
0
o
15
01>10
0
I
I
0
I
1
I
1
I
0
1
i
0
0
0
0
0
I
0
1
I
OUTPUT
OUTPUT
INPUT
INPUT
OUTPUT
INPUT
OUTPUT I OUTPUT
INPUT
INPUT
OUTPUT
OUTPUT
INPUT
OUTPUT
INPUT
OUTPUT! INPUT
INPUT
0
INPUT
I NPuTToUTPUT
OUTPUT
1
INPUT
INPUT
OUTPUT
INPUT
INPUT
I INPUT
INPUT
OUTPUT
INPUT
INPUT
!NPUT
INPUT
~Io
o
1
OUTPUT
0
--7- -:;- -r a-HI0 1-=-0:=
~_~
(~:~~)
0
0
t~--~J
I-
--~~-~lT-~~
0
!
-~_ _1_t~_ _0_1
___~_ _1_
D3 -
---
Group B
O~O
I
I
1
0 ~
I
D4
Group A
BASIC INPUT TIMING
W7-00 FOllOWS INPUT,
NO LATCHING)
AD
---t'--____/
\~_--J/
INPUT
D)-DO
------------j.------------- --
t DELAY TIME
- - t DELAY TIME
FROM RD
FROM INPUT DATA
BASIC OUTPUT
TIMING
(OUTPUTS LATCHED)
WR------------~
r--- SH-UP VIOLATION
-------------)(--
01- 0 0
-------------
----------
OUTPUT
t DATA
SET-UP
'---M""TOATA
Mode 0 Timing
0-53
)(----------
Operating Modes (cont'd.)
Mode 1 (Strobed Input/Output)
In thismode,a means for transferring input/output data to or from a specified port in conjunction with strobes or "handshaking"
signals is provided. Port A and Port B use the lines on Port C to generate or accept these "handshaking" signals in Mode 1. The
programmer can read the contents of Port C to test or verify the status of each peripheral device. Since no special instruction is
provided in the INS8080A microcomputer system to read the Port C status information, a normal read operation must be
executed to perform this function.
STBB
1BFa
INTR8
CONTROL WORD
0706050403°20100
11 f D 11
CONTROL WORD
07060504030201 DO
11 11IOtxJXt><]
11
I
1XWXlXI1/ 1 !XI
PC67
L_ _ _ _ _-... ::WJ~~T
STATUS WORD
Notes:
1. INTEA is controlled by bit set/reset of PC4 ,
2. 1NTES is controlled by bit set/reset of PC 2 ,
Mode 1 Input
IBF
(INPUT BUFFER FUIII - - - -......t---..J
STROBE ------t-~
NO PROTECTION
FOR THIS OPERATION
DATA
INPUT
------t---J
INTERNAL
INPUT lATCH
------t---J
AD
--------+------__________~----------------------------~
INTR _ _ _ _..........-'-_ _ _ _ _ _.J
Mode 1 Input Timing
D-54
Operating Modes (cont'd.)
MODE 1 (PORT AI
CONTROL WD.RD
CONTROL WORD
07060504030201 DO
D7 06 05 04 03 02 0100
11 I011 I011/0@D<1
11
Mode 2 Combinations
0-57
H4> 250 ns.
Note 3: Item 11 must be greater than Item 4 + 1.
only one line
~f a charact~r row, then
0-68
Item 21 must be either "1"
'
o~ "0" unless it
is the same
DP8350 Series Option Program Table
DP8350 Option: 80 Characters x 24 Rows, 5 x 7 Character Font, 7 x 10 Character Field
Item
No.
Parameter
1
Value
Dots per Character
5
Scan Lines per Character
7
Character (Font Size)
2
3
Dots per Character
7
Scan Lines per Character
10
Character Field (Block Size)
4
5
Number of Video Characters per Row
80
6
Number of Video Character Rows per Frame
24
7
Number of Video Scan Lines (Item 4 x Item 6)
240
8
Frame Refresh Rate (Hz) (two frequencies allowed)
9
Delay after/before Vertical Blank start to start of Vertical Sync (+/- Number of Scan Lines)
fl
10
Vertical Sync Width (Number of Scan Lines)
11
Delay after Vertical Blank start to start of Video (Number of Scan Lines)
12
Total Scan Lines per Frame (Item 7 + Item 11
13
Horizontal Scan Frequency (Line Rate) (kHz) Item 8 x Item 12)
14
Number of Character Times per Scan Line
15
Character Clock Rate (MHz) Item 13 x Item 14)
16
Character Time (ns) (1 7 Item 15)
17
Delay after/before Horizontal Blank start to Horizontal Sync Start (+/- Character Times)
18
Horizontal Sync Width (Character Times)
19
Dot Frequency (MHz) (Item 3 x Item 15)
20
Dot Time (ns) (1 7 Item 19)
21
Vertical Blanking Stop before start of Video (Number of Scan Lines)
(Range = Item 4 - lime to 0 lines)
22
Cursor Enable on all Scan Lines of a Row? (Ves or No) If not, which Line?
= Item
13';' Item 8)
= 60 Hz
fO
= 50Hz
4
30
10
10
20
72
260
312
15.6kHz
100
1.56MHz
641 ns
I
I
0
43
10.920MHz
91.6 ns
1
.'
Ves
I
I
•
23
Does the Horizontal Sync Pulse have Serrations during Vertical Sync? (Ves or No)
24
Width of Line Buffer Clock logic "0" state within a Character Time
(Number of Dot Time increments)
25
Serration Pulse Width, if used (Character Times)
26
Horizontal Sync Pulse Active state logic level (lor 0)
27
Vertical Sync Pulse Active state logic level (lor 0)
0
28
Vertical Blanking Pulse Active state logic level (lor 0)
1
No
4
-
1
FULL/HALF ROW CONTROL (PIN 5)
Device pin 5 converts the DP8350 programmed display
from 80 characters by 24 rows to 80 characters by 12
rows.
Full/Half
Row (Pin 5)
logic State
1
0
I
I
I
With pin 5 in logic "0" state, the 12 character rows are
equally spaced vertically on the CRT. Each row is spaced
by one full row of blanked video.
Also in this mode the address counter outputs address
the same memory space for two rows - the video row
and the blanked roW. Thus one half of the CRT memory
space is addressed with pin 5 in logic "0" state as
compared to pin 5 in logic "1" state.
Display
Size
80 by 24
--
80 by 12
D-69
PERIPHERAL
INTERFACE
I
VIDEO
INTERFACE
I
I
I
I
I
I
I
I
I
1--...-_----iI~h~~EUTE
I
I
I
1
I
I
I
I
I
I
I
MICRO
PROCESSOR
I
I
I
1
1
1
I
1
I
I
I
I
1
I
I
I
I
VIDEO
OUTPUT
1
I
I----~----~--~~-+I
HORIZONTAL
I
r _ _ _-'S'-'y"'NC'-'1
.-...:!~
1
I
I
:I
1
I
_ _.:!:.._ _ _.....I..J..._'-_..L.....,
VERllCAl
C. .
1-_ _",SYw:N..
CURSOR
ENABLE
1
THREE·TERMINAL
MONITOR
I
1
I
I
,I
Figure 6. System Diagram Using a Linb Buffer
PERIPHERAL
INTERFACE
VIDEO
INTERFACE
I
1
1
1
:----~----------~~
l-_p__..________.._____
I
I
I
1
I'
I
I
1
1
IDECODE
I
I
I
I
-ijl~TR1BUTE
I
I
MICRO·
I
PROCESSOR
1
1
I
I
I
I
I
I
I
I
1
I
I
VIDEO
1
OUTPUT
I
DISPLAY
:--~-~-i-~~~I
CONTROL
BUS
I
I
'---.-OR'"' ' ' O'"NT'' .':',' I
. -_ _ _~SYw:N..
C.... :
VERTICAL
I
.--"'-__""-___-''-'-___...L..,
~~~~~oTri.RMiNAl
1-,-_2.lSY~Nl:.C~I
SYSTEM CONTROL BUS
CRT CONTROLLER
CURSOR
I
I-_-"",N",AB""..
, ~I
~~---T--------------~
1
Figu,re 7. System Diagram with no Line Buffer
Note 1: If the Cursor Enable. Item 22, is"active ~n only one line of a character row, then Item 21 must be either "1" or "0" unless
it is the same as the line selected for Corsor Enable.
Note 2: Item 24 x Item 20 should be> 250 ns.
Note 3: Item 11 must be greater than Item 4 + 1.
D-70
Physical Dimensions
11052
ii575) -~,
RAD
0.5511 OJJ05
"
m.970 !I.127\
PIN NO. lINDENT--"
"
f--
0.600--0.620
Ir-115.240-15.7481
f 0':"
1_ _ _
--+O~~61;5
(15.815 0 ,381)
40-Lead Molded DIP (N)
NS Package Number N40A
2.020
:-------151.3(181
I
-I
I
i
0.520
m.Ws!-
MAX
saUAR~
"
1
r
,
i
0598
115.11191
MAX
40-Lead Cavity DIP (D)
NS Package Number D40C
Natlonal Simicondutfor
Corporation
2900 Semiconductor Drive
Santa Clara, California 95051
Tel.: (408) 737-5000
TWX: (910) 339-9240
National Semiconductor GmbH
8000 Muncher! 21
Eisenheimerslrasse 61/2
West Germany
Tel.: 089/9 15027
Telex: 05-22772
NS Internationallne .. Japan
Miyake Building
1-9 Volsuya. Shinjuku-ku 160
TOkyo, Japan
TeL: (03) 355-3711
TWX: 232-2015 NSCJ-J
National Semiconductor
(Hong Kong) lid.
8th Floor,
Cheung Kong Electronic Bldg
4 Hing Yip Sireet
Kwun Tong
Kowloon, Hong Kong
Tel.: 3-411241-8
Telex: 73866 NSEHK HX
Cable: NATSEMI
NS Electronics Do 8rasll
Avda Brigadeiro Faria Uma 844
11 Andar Conjunt(11104
Jardim Paulislano
Sao Paulo, Btasil
Telex:
1121008 CABINE SAO PAULO
NS Elactronici Ply. ltd.
Cnr. Stud Rd. & MIn. Highway
Bayswatsr, Victoria 3153
Australia
Tel.: 03-729-6333
Telex: 32096
National does not assume any responsibility for use of any circuitry described; no Circuit patent licenses are implied, and National reserves the right, at any time without notice, to change said Circuitry.
0-71
~National
SEPTEMBER 1978
Pub. No. 426305468'()Ol
~ Semiconductor
INS1771-1 Floppy Disk Formatter/Controller
General Description
The INS1771-1 is a programmable floppy disk formatter/
controller chip contained in a standard 40'pin dual-in·
line package. The chip. which is fabricated using
N-channel silicon gate technology. interfaces a floppy
disk drive directly to a computer interface bus. The
I NS1771-1 provides soft sector formatting. which may
be either IBM 3740 compatible or a user-selected sector
format.
•
Read Mode Capabil ities
Single/Multiple Record Read with Automatic
Sector Search or Entire Track Read
Selectable 128-8yte or Variable Record Length
• Write Mode Capabilities
Single/Multiple
Sector Search
Record Write
with Automatic
Entire Track Write for Diskette Initialization
•
The INS1771-1 is designed to operate on a multiplexed.
TR I-ST A TE® S-bit bidirectional bus with other busoriented devices. The c!1ip is programmed by the system
software via the bus and all data. status information. and
control words are transferred over the bus lines.
Programmable Controls
Selectable Track-to-Track Stepping Time
Selectable Head Settling and Head Engage Times
Selectable Three Phase or Step and Direction and
Head Positioning Motor Controls
•
Double Buffering of Data
• TTL Compatible
•
DMA or Programmed Data Transfers
Features
•
Reduces System Component Count
•
Soft Sector Format Compatibility
•
On-Chip CRC Generation and Checking
•
Automatic Track Seek with Verification
•
•
Provisions for Miniature Floppy Disk Interface
Direct Plug-in
FD1771-1
Replacement
for Western
INS1771-1 General (System Configuration
PARAllEl!
SERIAL
DATA
INTERFACE
flOPPY
DISK
DRIVE
© 1978 National
Se~iconductor Corp.
0-73
Digital
AbsolU_ Maximum Ratings
,
"
""
"'"
VOO with Respect to VB . . . . . . . . . . . . . . . . . . +20 V to -0.3 V
Max Voltage to Any Input with Respect to VBB ... +20V to -0.3 V
Operating Temperature . . . . . . . . . . . . . . . . . . . . . O°C to +70°C
,
0
°
Storage Temperature . . . . . . . . . . . . . . . . . . . . -55 C to +125 C
.'
,
"
"
"
,
Note: Maximum ratings indicate limits' beyond which permanent
damage may occur. Continujs operation at these limits is not
intended and should be limite to those conditions specified under
dc electrical characteristics.
"
DC Electrical Characteristics
TA = o°c to +700 C, VOO = +12.0V ± 0.6V, VBB = -5.0 V ± 0.25 V, VSS = OV, VCC = +5V ± 0.25V, 100 = 10mA
nominal, ICC = 30mA nomin~l, IBB = 0.4 nA nominal.
;
,
Symbol
Characteristic
III
Input Leakage
ILO
Output Leakage
VIH
Input High Voltage
Min
Input Low Voltage (All Inputs)
VOH
Output High Voltage
VOL *
OutP~t
Unit
Conditions
10
jJA
VIN =VOO
10
jJA
VOl,JT= VOO
V
0.8
V
2.8
Low Voltage
0.45
Note: VPl- .. 0.4 V when int~rfacing with 101l\l-power Schottky part.
~
Max
2.6
VIL
'VOL
Typ
V
10 = -100jJA
V
10 = 1.6mA
(10 < 1 mAl.
0.5Von WG.
.
AC Electrical Characteristics
TA;" o°c to +70°C, VOO = +12V ± 0.6V. Vaa = -5V ± 0.25 V, Vss =,OV. VCC = +5 V.± 0.25 V.
Symbol
Characteristic
Min
Typ
Max
Uni1
Conditions
Read.Operations
tET
Setup AOOR & CS to RE
tHLO
Hold AOOR & Cs from
tRE
RE Pulse Width
tORR
ORO Reset from RE
INTRa Reset
tlRR
f~om
RE
100
:ns
10
,ns,
500
RE
tOACC
" Data Access from RE
tOOH
Data Hold from RE
CL';' 2SpF
os
50
500
ns
3000
450
ns "
ns '
CL = 25pF
150
ns"
CL = 25pF
Write Qperations
tSET
Setup AO.DR &:CS to WE
tHLO
Hold AOOR & CSfrom WE
twE
tORR
WEPuise Width
c'" ,
,.
Hio
ns
10
ns
350
ns
ORO Reset from WE
ens
,ns
500
tlRR
INTRa Reset from WE
tos
Data Setup to WE
250
tOH
Data Hold from WE
150
3000
'o.
0-74
ns
ns
(see note)
i'
AC Electrical Charac1eristics (cont.)
TA ~
o°c to +70°C, VDD
~ +12 V ± 0.6 V, VBB ~ -5 V ± 0.25
v,
VSS ~ 0 v, VCC ~ +5 V ± 0.25 V.
,
---------,--------~-----r_----~-----,-----,--------,------~-----------------------~
Symbol
I
Characteristic
External Data Separation (XTDS
Min
Typ
Unit
Max
tpwx
tcx
Pulse Width Rd Data & Rd Clock
150
Clock Cycle Ext
2500
ns
tOE X
Data to Clock
500
ns
tDDX
Data to Data Cycle
2500'
ns
350
ns
____'--_____==-_~___________=----.l~___ '___~__~
Internal Data Separation (XTDS
tPWI
I
Conditions
~ 0)
I
~ 1)
I
Pulse Width Data & Clock
_~_l...~I~c~:~~~~rna~ _______
I
150
I
I
1000
'1 ~~~_ J______ l_~OOO
I
ns
.L~___.l_______________________
Write Data Timing
I
tWGD
Write Gate to Data
tpww
Pulse Width Write Data
tCDW
Clock to Data
tew
Clock Cycle Write
tWGH
Write Gate Hold to Data
1200
ns
I
20 0 0
140 0 0
00
I
1'1 0 0
300ns ± ClK tolerance
I
n~ S:s _~LI_±_0_'5_%_±
500
±0.5% ± ClK tolerance
o
____________Li________
Miscellaneous Timing
tCD 1
Clock Duty
175
ns
tCD2
Clock Duty
210
ns
tSTP
Step Pulse Output
3800
tDIR
Di r Setup to Step
tMR
Master Reset Pulse Width
4200
ns
I
24
10
2 MHz ± 1% (see note)
J.1S
These times doubled
when ClK ~ 1 MHz
J.1S
lip
Index Pulse Width
10
J.1S
tWF
Write Fault Pulse Width
10
J.1S
Note: Timings are given for 2 MHz Clock. For those timings noted, values will double when chip is operated at 1 MHz.
Timing Waveforms
121
r--_--,--I-,I-----IO-R-R-~-----c-c ""-1
--I"' ---:-1 _________.....r---'
~--IIRR-I
DAO VOL
INTRO
IHlO~1 I_I
I
AD, Al, CS(1)
~!
INTRO
VOL
I
(BUFFERS TAI·STATEDI
. ISET
I
AD. Al.;:S1ll
~
WE
r-hJ
----i--.....
I....-.-i
tDACe
ORO VOL
~~~---,
Ai' --:-I.--,.I-IRE-rl-----~-
DATA VAUO IDAll
READ DATA
r·~-----c-----------O'"
--l I-tORR
VOH
i---
__------~r-
---i--;;;;;::Jf:"L-----I
-I I+- I
IHlO
I
~I
:-IWE
----~I
--=j..- - - - - - - -
I
II~
~IOS-
I-
____~
"DH
NOTES:
1. E§ MAY BE PERMANENTL Y TIED LOW IF
DESIRED.
2. WHEN WRITING DATA INTO SECTOR, TRACK,
OR DATA REGISTER, USER CANNOT READ
THIS REGISTER UNTIL...AT LEAST B/.I.s AFTER
THE RISING EDGE OF WE. WHEN· WRITING INTO
THE COMMAND REGISTER, STATUS IS NOT
VALID UNTil SOME 12/.1.$ LATER. THESE TIMES
ARE DOUBLED WHEN eLK'" 1 MHz.
Write Enable Timing
Read Enable Timing
D·75
VOL
IIL-------- Vil
---1.-.. .
taoH
NOTES:
1. CS MAY BE PERMANENTl V TIED LOW IF
DESIRED.
2. FOR READ TRACK COMMAND, THIS TIME MAY
BE 12 TO J2/.1.s WHEN s '" O. (THIS TIME
DOUBLES WHEN CLK '" 1 MHz.)
--I
1--.tIRR~
1-'
tSET
DATA VALID (OAl)
WRITE DATA
L.- - - - - - -
32",
V,H
Timing Wavefonns (cont.)
--I 1- t,wx
_I I-- tpwx
FDClDCK
-1l~
-I 1- tpwx
1---- t c x _ l _ 'cx -~I
MISSIN.G.
DAr
FDDATA
'1:'~'CNKG
____~n~____~n~______~t____
tpwx
+j . I--
tpwx
n
I-- tDEX -I
tpwx
1---1 I--
+j
n
I.JL
j..tDEx~l- tDEX - j _ t D D x _ 1
1_--tDDX
--l
NOTES,
1. ABOVE TIMES ARE DOUBI.ED WHEN eLK'" 1 MHz.
2. CONTACT Nse FOR EXTERNAL CLOCK/DATA
SEPARATOR CIRCUITS.
Read Timing (XTDS
= 0)
FODAlA
NOTES:
1. INTERNAL DATA SEPARATION MAY WORK FOR
SOME APPLICATIONS. HOWEVER, FOR APPLlCA·
TIONS REQUIRING HIGH DATA RECOVERY
RELIABILITY, Nse RECOMMENDS THAT EXTER·
NAl DATA SEPARATION BE USED.
2. fOCLOCK MUST BE TIED HIGH.
Read Timing (XTDS
WG
= 1)
-Jr------------------------------~I~
1- tWGD -1
tpww
'PWW
'PWW -I 1-I 1- --I r-
'PWW ~I
'WGH ~I 11- -I I-- tpww
..
- ____
...,.:0;,.·
WO _ _ _.....J
I
I
cw --..
1 - - tew -----t----t
I
t-'CDW-I
LAST DATA BIT
TO BE WRITTEN
Write Data Timing
TI' I
( VIH
l-tlP-1
Wi' ?
I
I+-. 'W' ----I
MR
I
tCYC
ClK
1---1
r--
I
tWR
I VIH
DIRe
VOH
VOL
J
STEP IN
tSTP
~I
V,H
'.DI""R'
-.1
STEP
VOL -----I
LrL
-I. J- tCD,
....:t 1.- teD2
Miscellaneous Timing
0-76
n
11
tSTP
STEP OUT
tSTP
~
J. -I I-- I-- -I I- +j I-- tSTP
n
tOIR n
n
L--J
L..t~
L--I
~(I--
INS1771-1 Block Diagram
FDCLOCK
FDDAlA
...._....l.:"'-__
XTDS
CONTROL
DRn
(30)
WG
129)
TG43
WPRT
WF
INTRO
MR
Os
Rl'
COMPUTER
INTERFACE
CONTROL
WE
AD
A1
CONTROL
PLA
CONTROL
(190 x 16)
CONTROL
DISK
INTERFACE
CONTROl
1-""",;:-_ PH2/DIRC
elK
HLT
POWER
SUPPLIES
r
Vee
VB8
Vss
140)
121)
(1)'
120)
~
•
•
~
+12V
'5V
NOTE: APPLICABLE PINOUT NUMBERS
ARE INCLUDED WITHIN
PARENTHESES.
-5V
GND
INS1771-1 Functional Pin Definitions
INPUT SIGNALS
The following describes the function of all INSl771-1
input/output pins, Some of these descriptions reference
internal circuits,
Chip Select (CS): When low, the chip is selected, This
enables communication between the INSl771-1 and the
CPU.
NOTE
In the following descriptions, a low represents a
logic 0 (0 Volt nominal) and a high represents a
logic 1 (+5 Volts nominal).
Read Enable (RE): When low coincident witb an active
(low) CS input, allows the CPU to read data or status
information from a selected register of the chip,
D-77
IIICI
Functional Pin Definitions (cont.}
Write Enable (WE): When low cON1cident with an active
(low) CS input, allows the CPU to write data or control
words into a selected register of the chip.
Index Pulse (iP): Goes low for 10 microseconds
(minimum) whenever an index mark is encountered
(once per revolution) on the diskette.
Register Select (AD, Al) Lines: These two inputs are
used in conjunction with either an active (low) REar
WE input to select an INSl771-1 register to read from
or write into as indicated below.
Track 00 (TROD): Goes low whenever the Read/Write
head is positioned over track 00 of the diskette.
,
Al
AD
RE
WE
0
0
0
1
Status Registe,
0
0
1
0
Command Register
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
0
1
1
1
1
0
Ready: When high before the execution of a Read or
Write command, indicates that the floppy disk drive is
ready for a Read or Write operation. When low, the
Read or Write operation is not performed and an interrupt is generated. However, a Seek operation is always
performed. The complement of the Ready input appears
as bit 7 (Not Ready) of the Status Register.
Selected Register
Track Register
Three-Phase Motor Select (3PM): When low, the threephase motor control interface is selected for the floppy
disk drive by the INSl771-1- When high or open, the
step-direction motor control interface is selected by the
INS1771-1.
Sector Register
Data Register
Master Reset (MR): When low, clears the Command
Register, resets bit 7 (Not Ready) of the Status Register
low, and makes the PH llSTEP output active low. When
the MR returns high, a Restore command is execufed
(regardless of the state of the Ready input from the
floppy disk drive).
Clock (ClK): This input pin requires a 2·megahertz
(±1%) squarewave clock as a reference for all internal
timing.
Oisk Initialization (DINT): When low coincident with a
Write Track command from the CPU, causes the Write
Track operation to be terminated and bit 6 (Record
Type/Write Protect) of the Status Register to be set
high.
Test: This input pin is normally tied to +5 Volts.
However, it may be used to disable the programmed
stepping rate delays for testing the INSl771-1 or for
. disk drives that do not require the long delay times to
change tracks. These delays are disabled by tying the
Test input to ground.
Head load Timing (Hl T): When high, the Read/Write
head is assumed to be engaged against the recording
medium (diskette). The Hl T input is sampled after each
10 millisecond internal delay after HlD is asserted.
NOTE
For a miniature floppy disk, a 1-MHz (±1%)
squarewave clock is required.
External Data Separator (XTOS): When low, the
composite read disk serial data (data bits and clock)
from the floppy disk drive is separated externally
by the user. When high or open, the composite read
disk data is separated by the internal data separator
of the chip.
VBB: -5 Volt supply.
VCC: +5 Volt supply.
VOD: +12 Volt supply.
VSS: Ground (0 Volt) reference.
Floppy Disk'Oata (FDDATA): This ·input pin provides either of the following serial data: both clock
and data bits (composite read disk data) when the
XTDS input is high; or externally separated data bits
when the XTDS input is low.
OUTPUT S'IGNAlS
Data Request (ORO): Open·drain output to the CPU
that goes high when the INSl771-1 is ready to transfer
a byte of data during a Read or Write operation. The
ORO output is reset low upon the completion of a byte
Read or Write operation.
Floppy Disk Clock (FDClK): This input pin provides
the externally separated clock when the XTDS input is
low. The FDClK input should be connected to +5 Volts
(logic 1) when the XTDS input is high.
Interrupt Request (lNTRO): Open-drain output to the
CPU that goes high at the completion or t.\lrmination of
any operation. The INTRO output is reset low when a
new command is loaded into the Command Register,
or Status Register Read.
Write Protect (WPRT): When low, immediately terminates a Write command and sets bit 6 (Record Typel
Write Protect) of the Status Register high. In addjtion,
an interrupt is generated when the WPRT input is low.
The WPRT input is sampled whenever a Write command
is received from the CPU.
Write Data (WD): Composite write disk 1:lata (both clock
and data bits of 500 nanoseconds in duration) output
to the floppy disk drive. The WD output can drive two
TTL loads.
Write Fault (WF): When low coincident with an active
(high) Write Gate (WG) output, causes th~ current Write
command to be terminated and sets bit 5 (Record Typel
Write Fault) of the Status Rsgister high. The WF input
should be made inactive (high) coincident with an
inactive (low) WG output. If not used, tie high.
Write Gate (WG): Active (high) whenever data is to be
written on the diskette. As a precaution to erroneous
writing, the first data byte must be loaded into the Data
Register (in response to a DRO output from the
INSl771-1) before the WG output can be activated.
0-78
Functional Pin Definitions (cont.)
Track Greater Than 43 (TG43): When high during a
Read or Write operation, informs the floppy disk drive
that the Read/Write head is positioned between tracks
44 and 76.
-Three·Phase Motors/Step·Direction Motors Control Lines
(PH1/STEP, PH2/DIRC, PH3): These three control lines
provide either of the following outputs: successive
three-phase pulses (active high PH3 signal and active
low PH1 and PH2 signals) over the lines for three·phase
stepping motors; or a level over the PH2/DI RC line
(high level for stepping in and low level for stepping out)
and 4 microsecond high-level pulses over the PH1/STEP
line to determine the direction and stepping rate for
step-direction motors. For direction control of threephase motors, the stepping sequence is 1-2-3-1 when
stepping in and 1-3-2 when stepping out. The particular
motor interface selected is determined by the hardwiring
of the 3PM input. The PH1/STEP output is made active
low after a master reset.
INPUT/OUTPUT SIGNALS
Data Access Lines (DAUBus: This TRI-STATE bus
comprises eight inverted input/output lines (DAlODAl7). The bus provides bidirectional communications
between the CPU and the INSl771-1. Data, control
words and status information are transferred via the
DAl Bus.
Pin Configuration
v"
WE
39
liE
38
37
36
os
AD
Al
CAL 0
lfAIl
OAl2
OAl3
iJAi4
Head load (HlD): High-level output that controls the
loading of the Read/Write head against the recording
medium (diskette). A Read or Write operation does not
occur until a high-level H l T input is sampled by the
INSl771-1. The HlD becomes active at the beginning of
a Read, Write (E flag is set high) or Verify operation, or
a Seek or Step Operation with the H flag set high; it
remains active until the third index pulse following the
last operation that used the head.
DAl5
DAl6
iTIi:I1
PHl/STEP
PH2/01RC
PH3
3PM
MR
Vss
10
11
11
13
INSl771·1
14
15
16
17
18
19
,.
3'
3.
33
31
31
30
19
18
11
16
15
14
13
21
11
VOO
INTRO
ORQ
DINT
WPRT
iP
TROD
WF
READY
wo
WG
TG43
HLO
FDDAlA
rOClK
XTns
eLK
HLT
TEST
vee
INS1771-1 Commands
The INSl771-1 accepts and executes the eleven commands listed and summarized in table 1. Flags associated
with these commands are summarized in table 2. With
the exception of the Force Interrupt command, a
command word should be loaded into the internal
Command Register only when bit 0 (Busy) of the Status
Register is inactive (low). Whenever a command is being
executed, the Busy status bit is set high. When a com·
mand is completed or an error condition exists, an
interrupt is generated and the Busy status bit is reset
low. The Status Register indicates whether a completed
command encountered an error or was fault free.
The Type I Commands contain a head load (h) flag
(bit 3) that determines whether or not the head is to be
loaded at the beginning of the command. If h = 1, the
head is loaded at thebeginning of the command (HlD
output made active high). If h = 0, the HlD output is
made inactive low. Once the head is loaded (HlD is
active), the head will remain engaged until the INS 1771-1
receives a command that specifically disengages the head.
If the INSl771-1 does not receive any commands after
two revolutions of the disk, the head will be disengaged
(HlD made inactive). The Head load Timing (HlT)
input is only sampled after a 10 millisecond delay, when
actual reading or writing on the diskette is to occur.
Note that a verification, described below, requires
reading off the diskette.
As indicated in table 1, the eleven commands accepted
and executed by the INSl771-1 are divided into four
types. The following paragraphs describe the eleven
commands under these four divisions.
The Type I Commands also contain a verification (V)
flag (bit 2) that determines whether or not verification is
to take place on the last track. If V = 0, no verification is
performed. If V = 1, a verification is performed.
TYPE I COMMANDS
Type I Commands are basically head positIOning commands and include the Restore, Seek, Step, Step-In, and
Step-Out commands. Each of the Type I Commands
contains a rate (rlro) field (bits 0 and 1) that determines
the stepping motor rate as defined in the table below:
During verification, the head is loaded (H lD is active)
and after an -internal 10 millisecond delay, the HL T
input is sampled. When the HlT input is active (high),
r1
ro
elK = 2MHz
TEST = 1
elK = 1 MHz
TEST = 1
12 ms
0
0
6 ms
0
1
6 ms
12 ms
1
0
10 ms
20 ms
1
20 ms
40 ms
1
I
0-79
elK = 2MHz
TEST= O.
elK = 1 MHz
TEST =0
J
J
-400",
-.00",
Table 1. Commands Summary
-Type
COInn'iand
.' '-\~
(
-C-Res_tore
I
,II
Bits
7
6
5-
4'
3
2
0
0
h
V
Seek
0, 0
,0 0
Step
0
Step In
0
Step Out
0
0
Read Command
0
II \
Write Command
0
III
Read Address
III
Read Track
III
Write, Track
IV
Fo~ce'lnterruPt
0
ro
h
V
'1
q
V
rJ
ro
0
u h
u, h
V
'1
ro
:1
u
h
V
'1
0
in
b
E
b
ro
0
al
0
ao
0
,
0
'-
0
ro
m
b
E
0
0
E
0
0
E'
0
0
E
0
0
13 12
11
10
0
Table 2. Command Flags Summary
! '
h = Head Load flag (bit 3 of Type I)
b = Block Length flag (bit 3 of Type II) ,
h = 1, Load head at beginning
h = 0, Do not load head at beginning
b = ,', IBM format (128 to 1024 bytes)
b = 0, Non·IBM format (16 to 4096 bytes)
V = Verify flag (bit 2 of Type I)
E = Enable HLD & 10ms delay (bit 2 of Type II)
V = 1, Verify on last track
V = 0, No verify
E = 1, Enable HLD, HLT'& 10ms delay
E =0, Head is assumed engaged & no 10 ms delay
'1 ro = Stepping Motor Rate (bits 1 70 of Type I) ,
fi'ro = 00, 6 ms'between
'1 ro = 01, 6 ms between
r,ro = 10, 10ms between
,r,l ro = 11, 20
between
ms
a,ao = Data Address Mark (bits 1 - 0 of Type II)
alao = 00, FB (Data Mark)
alao = 01, FA (Data Mark)
alao = 10, F9' (Data Mark)
alao = 11, F8(DataMark)
steps
steps
steps
steps
u = Update flag (bit 4 of Type I)
5 = Synchronize flag (bit 0 of T,ype III)
s= 0, Synchronize to AM
s= 1, Do not synchronize to AM
u = 1, Update Track Register
u = 0, No update
m = 'Multiple Record flag (bit 4 of Type-II)
In = Interrupt,Condition flags (bits 3 - 0 of Type IV)
m = 0, Single Record
m = l~Multiple Records
10 =
11 =
12 =
13 =
1, Not Ready to Ready Transition
1, Ready to Not Ready Transition
1, Index Pulse
Immediately
INS1771-1 Commands (cont.)
the first encountered ID field is read off the diskette.
The track address of the 10 field is then compared to the
Track Register. If there is a match and a valid ID CRe.
the verification is complete, an interrupt is generated,:
and the Busy status bit'isreset. Inhere is not a match
and II valid ID CRC, an interrupt is generated, the Seek
Error status .bit (bit 4) is set high, and t~e Busy status
bit is reset low. If there is not a: valid CRC, the CRC
Error status bit (bit 3) is set high; and the next encoun-
tered 10 field is read off the diskette for verification. If
an 10 field with a valid CRC cannot be found after four
revolutions' 'of the diskette, the INS 1771-1 term inates
the operation and sends an interrupt (I NTRQ) Signal to
,the CPU.,
0-80
The Step, Step-In and Step-Out commands contain an
update (u) flag (bit 4)_ When u = 1, the Track Register
Is updated by one for each step. When u = 0, the Track
Register is not uj:ldated.
INS1771-1 Commands (cont.)
Restore (Seek Track 0): Upon receipt of this command,
the Track 00 (TROO) input is sampled. If TROO is active
low (indicating the Read/Write head is positioned over
track 0), the Track Register is loaded with zeros and an
interrupt is generated. If TROO is not active low, stepping
pulses at a rate specified by the rlro field (bits 0 and 1)
are issued until the TROO input is active low. At this
time, the Track Register is loaded with zeros and an
interrupt is generated. If the TROO input does not go
active low after 255 stepping pulses, the INSl771-1
gives up and interrupts with the Seek Error status bit
set. Note that the Restore command is executed when
the MR input goes from an active (low) to an inactive
(high) state. A verification operation takes place if the
V flag (bit 2) is set. The setting of the h flag (bit 3)
allows the head to be loaded at the start of the command.
allows the head to be loaded at the start of the command. An interrupt is generated at the completion of the
command.
Step-Out: Upon receipt of this command, the INSl771-1
issues one stepping pulse in ttie direction towards track
O. If the u flag (bit 4) is set, the Track Register is decremented by one. After a delay determined by -the rFO
field (bits 0 and 1), a verification takes place if the V
flag (bit 21 is on. The setting of the h flag (bit 3) allows
the head to be loaded at the start of the command. An
interrupt is generated at the completion of the command.
TYPE II COMMANDS
The Type II Commands include the Read sector(s) and
Write sector(s) commands. Prior to loading the Type II
Commands into the Command Register, the computer
must load the Sector Register with the desired sector
number. Upon receipt of the Type II Commands, the
Busy status bit is set. If the E flag (bit 2) = 1 (this is the
normal casel, HLD is made active and HLT is sampled
after an internal 10 millisecond delay. If the E flag = 0,
the head is assumed engaged and there is no' internal
10 millisecond delay.
Seek: This command assumes that the Track Register
contains the track number of the current position of the
Read/Write head and that the Data Register contains the
desired track number. The INSl771-1 will update the
Track Register and issue stepping pulses in the appropriate direction until the contents of the Track Register
are equal to the contents of the Data Register. A verification operation takes place if the V flag (bit 2) is set.
The setting of the h flag (bit 3) allows the head to be
loaded at the start of the command. An interrupt is
generated at the completion of the command.
When an ID field (see figure 1) is located on the diskette,
the INSl771-1 compares the Track Number of the ID
field with the Track Register. If there is not a match, the
next encountered I D field is read and a comparison is
made. If there is a match, the sector number of the ID
field is then compared with the Sector Register. If there
is not a match, the next encountered ID field is read and
a comparison is made. If there is a match, the CRC field
is read. (The polynomial for the eRC is G (x) = x 16 +
x 12 + x 5 + 1. The CRe includes all the information
starting with the address mark and up to the CRC
characters.) If there is a CRC error, the eRC Error status
bit is set and the next I D field is read off the diskette
and comparisons are made. If the eRC is correct, the
data field is located and will be either written or read,
depending upon command. The INSl771-1 must find an
ID field with a valid track number, sector number, and
CRe within four revolutions of the diskette; otherwise,
the Record Not Found status bit (bit 41 is set and the
command is terminated with an interrupt.
Step: Upon receipt of this command, the INSl771-1
issues one stepping pulse to the floppy disk drive. The
stepping motor direction is the same as in the previous
step command. After a delay determined by the f1 ro
field (bits 0 and 1), a verification takes place if the V
flag (bit 2) is set. If the u flag (bit 4) is set, the Track
Register is updated. The setting of the h flag (bit 3)
allows the head to be loaded at the start of the command. An interrupt is generated at the completion of the
command.
Step-In: Upon receipt of this command, the INSl771-1
issues one stepping pulse in the direction towards track
76. If the u flag (bit 4) is set, the Track Register is
decremented by one. After a delay determined by the
rl ro field (bits 0 and 1), a verification takes place if the
V flag (bit 21 is set. The setting of the h flag (bit 3)
f . o - - - - - - - - - - - I D FIELD
IDAM
'" 10 ADDRESS MARK; DATA'" (FE), elK == (t7)
DATA AM'" DATA ADDRESS MARk; DATA'" (Fa, f9, FA, OR FB). eLK = (t1)
Figura 1. IBM 3740 10 Field and O.ta Field Formats
0-81
INS1771-1 Commands (cont.)
provided that the CPU has previously read the Data
Register, If one or more characters are lost, the Lost
Data status bit is set. This sequence continues until, the
data field has been inputted to the computer. If there is
a CRC error in the data field, the CRC Error status bit is
set, and the command is terminated (even if it is a
multiple record command). At the end of the operation,
the type of Data Address Mark encountered in the data
field is recorded in the Status Register (bits 5 and 6) as
shown below:
Each of the Type II Commands contains a b flag (bit 3),
which in conjunction ,with the sector length field
contents of the ID, determines the length (number of
characters) of the data field. For IBM 3740 compatibility,
the b flag (bit 31 should equal 1. The numbers of bytes
in the data field (sector) is then 128 x 2 n where n = 0,
l,2,or3.
For b = 1:
Sector Length
Field (hex)
Number of Bytes
in Sector (decimal)
00
01
02
03
128
256
512
1024
01
02
03
16
32
48
64
04
FB
FA
F9
F8
a
•
•
FF
00
Data AM (hex)
o
Write Command: Upon receipt of this command, the
Read/Write head is loaded, (HLD active) and the Busy
status bi,t is set. When an ID field is encountered that has
th'e correct track number, correct sector number, and
correct CRC, a ORO output is generated, The INSl771-1
counts off 11 bytes from the CRC field and the Write
Gate (WG) output is made active if the ORO is serviced
(i,e., the Data Register has been loaded by the computer).
If ORO has not been serviced, the command is terminated and the Lost Data status bit is set. If the 0 R has
been serviced, the WG is made active and six bytes of all
Zero levels are then written on the diskette. At this
time, the Data Address Mark is then written on the
diskette, as determined by the alao field (bits a and 1)
of the ,command as shown below:
For b = 0:'
Number of Bytes
in Sector (decimal)
Status Bit 6
o
o
a
When the b flag (bit 3) equals zero, the sector length
field (n) multiplied by 16 determines the number of
bytes in the sector or data field as shown below:
Sector Length
Field (hex)
Status Bit 5
4080
4096
~
0
0
Q
Each of'the Type II Commands also contains an m flag
(bit 4) that determines whether multiple records (sectors)
are to be read or written, depending lipan the command.
If m = 0, asingle sector is read or written and ~n inter:
rupt is generated at the completion of the command. If
m = 1, mUltiple records are read or written with. the
Sector Register' internally updated so that an address
verification can occur on the next record, The INSl771-1
continues to read or write multiple records and update
the Sector Register until the Sector Register exceeds the
number of sectors on the track or until the Force
Interrupt command is loaded into the Command Register.
When either of these occurs, the command is terminated
and an interrupt is generated.
0
Data Mark (hex)
Clock Mark (hex)
FB
FA
F9
F8
C7
C7
C7
C7
The INSl771-1 then writes the data field by generating
ORO outputs to the, computer. If the ORO is not
serviced in time, the Lost Data status bit is set and a
byte of zeros is written on the diskette. The command is
not terminated. After the last data byte has been written
on the diskette, the two-byte CRC is computed internally
and written on the diskette followed by one byte of all
One levels, WG is then made inactive.
TYPE III COMMANDS
Read Command: Upon receipt of this command, the
Read/Write head is loaded and the Busy status bit is set,
Then, when an 10 field is encountered that has the
correct track number, correct sector number, and.
correct CRC, the data field is inputted to the computer.
The Data Address Mark of the data field must be found
within 28 bytes of the correct 10 field. ·If not, the
Record Not Found status bit is set and the operation is
terminated, When the first character or byte of the data
field has been shifted through the Data Shift Register,
it is transferred to the Data Register and a Data Request
(ORO) output is generated, When the next byte is
loaded into the Data Shift Register, it is transferred to
the Data Register and another ORO output is generated,
Read Address: Upon receipt of th is command, the head
is loaded and the Busy status bit is set. The next encountered 10 f.ield is then read in off the diskette, and the
six data bytes of the 10 field are assembled and transferred to the Data Register, and a ORO output is generated for each byte. (The six bytes of the 10 field are
shown in figure 1,)
Although the CRC characters are inputted to the computer, the INSl771-1 checks for validity and the CRC
Error status bit is set if there is a CRG error. The Sector
Address of the 10 field is written into the Sector
Register. At the end of the operation, an interrupt is
generated anti the Busy status bit is reseL
D-82
INS1771-1 Commands (cont.)
TYPE IV COMMANDS
Read Track: Upon receipt of this command, the head is
loaded and the Busy status bit is set. Reading starts with
the leading edge of the first encountered index mark and
continues until the next index pulse. As each byte is
assembled, it is transferred to the Data Register and the
Data Request (DRO) output is generated for each byte.
No CRC checking is performed. Gaps are included in the
input data stream. If the flag (bit 0) of the command
is a low, the accumulation of bytes js synchronized to
each Address Mark encountered. Upon completion of
the command, the interrupt is activated.
Force Interrupt: This command carl 'be loaded into the
Command Register at any time. If there is a current
command under execution (Busy status bit is set), the
command is termi(lated and an interrupt is generated
when the condition specified in the 10 through 13 field
(bits 0 through 3) is detected. More than one condition
may be specified. The interrupt conditions are indicated
below:
s
10 = Not Ready·to·Ready Transition
11 = Ready-to-Ready Transition
12 = Every I ndex Pulse
13 = Interrupt Occurs Immediately
The INS1771·1 handles single density frequency modu·
lated (FM) data. Each data cell is defined by clock
pulses. A pulse recorded between clock pulses indicates
the presence of a logic 1 bit; the absence of this pulse
is interpreted as a logic 0 bit. The Address Marks for
Index, I D, and Data are identified by a particular pattern
not repeated in the remainder of the ID field or Data
field. This is accomplished by reading patterns that are
recorded with missing clock bits (logic 0) as shown
below:
NOTE
If 10 through 13 = 0, no interrupt is generated;
however, the current command is terminated and
the Busy status bit is reset.
INS1771-1 Status Register
An 8-bit register is provided in the INS1771-1 to hold
device status information. This Status information varies
according to the type of command executed as shown
in table 3. The contents of the Status Register, which
can be read into the DAL Bus by a Read operation,
are described below.
For initial ization:
Write 2 CRC Characters
Data
1 1 1 1 0 1 1 1 = F7
Clock 1 1 1 1 1 1 1 1 = FF
Index Address Mark
Data
1 1 1 1 1 1 0 0 = FC
Clock 1 1 0 1 0 '1 1 1 = D7
I D Address Mark
Data
1 1 1 1 1 1 1 0 = FE
Clock 1 1 0 0 0 1 1 1 = C7
Data Address Mark
Data
1 1 1 1 1 0 1 1
Clock 1 1 0 0 0 1 1 1
Deleted
Data Address Mark
Data
Clock 1 '1 0 0 0 1 1 1 = C7
Spare
Data
Clock
Bit 0: When high (set), indicates that a command is
under execution. When low (reset), indicates that no
command is under execution.
'
= F9 - F B
= C7
1 1 1 1 1 0 0 0 = F8
Bit 1: For Type I Commands, this bit is the comple·
ment of the Index Pulse (iP) input. When set, it indicates
that an inde« mark has been detected on the diskette.
1 1 1 1 1 1 0 1 = FD
(user designated)
For Types II and III Commands, this bit is a copy of the
Data Request (DRO) output. When set, it indicates that
the Data Register is full during a Read operation or that
the Data Register is empty during a Write operation. Bit
1 is reset to zero when updated.
These patterns are used as synchronization codes by the
INS 1771·1 when reading data and are recorded by the
formatting command (Write Track) when the INS 1771·1
is presented with data F7 through FE.
Bit 2: For Type I Commands, this bit is the complement
of the Track 00 (TROO) input. When set, it indicates
that the Read/Writ,e head is positioned over track O.
Write Track: Upon receipt of this command, the head is
loaded and the Busy status bit is set. Writing starts with
the leading edge of the first encountered index pulse
and continues until the next index pulse,at which time
the interrupt is activated. The Data Request output is
activated immediately upon receiving the command and
writing does not start until after the first byte has been
loaded into' the Data Register. If the, Data Register has
not been loaded by the second index pulse, the operation
is terminated. This sets the Not Busy and Lost Data
status bits, and activates the interrupt. If a byte is not
present in the Data Register when needed, a byte of
zeros is substituted. Address Marks and CRC characters
are written o'n the diskette by detecting certain data
byte patterns in the outgoi ng data stream as shown
above. The CRC generator is initialized to all Ones when
any data byte from F8 to FE is about to be transferred
from the Data·Register to the Data Shift Register.
For Types II and III Commands, this bit is set to indicate
that the computer did not respond to the DR 0 output
from the INS1771-1 in one byte time. Bit 2 is reset to
zero when updated.
Bit 3: For Type I Commands, this bit is set when one or
more CRC errors were encountered on an unsuccessful
Track Verification operation. Bit 3 is reset to zero when
updated.
For Type II and III Commands, bit 3 is set when an
error is found in one or more I D fields, while bit 4 is set.
Bit 3 is reset low when updated.
Bit 4: For Type'l Commands, this bit is set to indicate
that the desired track was not verified. Bit 4 is reset
low when updated.
For Type II and III Commands, bit 4 is set to indicate
th,at the desired track and sector were not found. Bit 4 is
reset low when updated._
The Write Track command does not execute if the D INT
input is grounded. Instead, the Write Protect statUs bit
is set and the interrupt is activated. One F7 pattern in
the Data Register generates 2 CRC characters.
Bit 5: For Type I Commands, this bit is set to indicate
that the ReadlWrite head is loaded and engaged. Bit 5
D-83
'1"
INS1771-1 Commands (cont.)
is the.logicill AND of the H~ad Load (H LD) output
and the Head Load Timing (HL T) input,
For Type II and III Commands,. bit 6 indicates the
following: the MSB of the record.type code from the
data field address mark during execution of a Read
Command; and a write fault during execution of a Write
or Write Track command. Bit 6 is reset low when up·
dated.
'
.
For Type II and· II I CO(Ylmands, bit 5 indicates the
'following: the LSB of the record'type code· from the
data .field address' mark durirlg. executiOn of a Read
Command; and a write' fault during execution of a Write
or Write Track Command. Bit 5 is reset low when
updated.
Bit 7: When set, indicates that the floppy disk drive is
not ready. Wh~n reset, indicates that the drive is ready.
Bit 7 is the complement of the Ready input and is
logically ORed with the Master Reset (MR) input. The
Types II and III Commands are I"\ot executed unless the
floppy disk drive is ready.
Bit 6: For Type I Commands, this bit is the complement
of the Write Protect (WRPT) input. When set, i.t indicates
that the write protect is activated.
Table 3. Status Register Summary
Commands
Bit
All Type I
Commands
Read
Adqress
- Not Ready
Read
Read
Track
Write
Track
Write
Not Ready
Not Ready
Not Ready
Not Ready
Record Type
0
Write Protect
Write Protect
0
Record Type
0
Write Fault
Write Fault
10 Not Found
Record Not Found
0
Record Not Found
0
CRC Error
0
CRC Error
0
Lost Data
Lost Data
Lost Data
Lost Data
ORO
ORO
ORO
ORO
ORO
Busy
Busy
Busy
Busy
Busy
S7
Not Ready
S.6
Write Protect
S5
Head Engaged
S4
Seek Error
53
CRC Error
CRG Error
52
Track 0
Lost Data
Sl
Index
SO
Busy
0
Programming Examples
Some examples of the software <;ontrol of the INSl771·1
·are shown in flowchart form. The first example (figure 2)
shows the writing of information onto a particular track
and sector. TI~e second example (figure 3) shows acces·
sing of information from successive sectors. The third
example (figure, 4) shows how information may be
sought by using Track 00 as a table ofcont,ents.
When t'ransfer of data with the INSl771·1 is required
by the host processor, the device address is decoded and
CS is made low. The least significant address bits A 1 and
AD, combined with the signals FiE during a Read opera·
tion or WE during a Write operation, are interpreted a,s
selecting the following registers:
Al
AD
Read (RE)
Write (WE)
INS17.71-1 Operation
0
D
Thefollowing.'describes the operation of the INSl771·1.
Use the block diagram on page 5, as necessary, to follow
these descriptions.
D
Status Register
Track Register
Sector Register
Data Register
Command Register
Track Register
Sector Register
Data Register
INSl771-1 PROCESSOR ,INTERFACE
All commands, status and data are transferred over the
TRI-STATE bidirectional OAt. (Data Access Lines) Bus.
The B lines of the DAL Bus (DALD -DAL7) present an
open circuit to the com man processor peripheral bus
until activated by the low·level CS (Chip Select) signal.
An active CS combined with a low-level RE(Read
Enable) sets the DAL Bus into the 'transmitter mode,
while. the CS combined with a low·level WE (Write
Enable) sets the DAL Bus in the receive.r mode.
D
During Direct Memory Access (DMA) types of data
transfers between the Data Register of the INS1771·1
and the processor, the Data Request (ORO) output is
used in Data Transfer control. This signal also appears as
status bit 1 during Read and Write operations.
On Disk Read operations, the Data Request (ORO)
output is activated (set hi.gh) when an assembled serial
input byte is transferred in parallel to the Data Register.
Th,is bit is cleared when the Data.Register is read by the
processor. If the Data Register is read after one or more
D-84
INS1771-1 Programming Examples (cont.)
TRACK = A3
ADDR = 01
SEND DESIRED
TRACK NO. TO
TRACK REG =
WE =0
10100011
SEND DESIRED
SECTOR NO. TO
SECTOR REG =
SECTOR = 16
ADDR = 10
WE = 0
0001 0110
HEAD LOAD ACTIVATED
VERIFY REQUESTS
6m, STEP RATE
MDR = 00
WE=O
ADDR = 00
RE = 0
REPEAT SEEK
OPERATION OR
DO DIAGNOSTIC
TESTS
YES
HEAD IS ASSUMED LOADED FROM
SEEK OPERATION. WRITE SINGLE
SECTOR,IBM SECTOR FORMAT
(128 BYTES).
DATA ADDRESS MARK = FB
ADDR = ~O, WE =0
ORO
READ THE
BYTE FROM
MEMORY AND
INCREMENT ADDR
READ STATUS
REGISTER
AODR =11
WE = 0
PERFORM ERROR
DIAGNOSTICS
ORO
PERFORM ERROR
DIAGNOSTICS
YES
•.
,Figure 2. Writing Data
0-85
fNS1771-1 Programming Examples (cont.)
,i';,'
ASSUM!S:
- TRACK,IS ~I}cATED
- DESIRED SECTOR IS LOADED
READ STATUS
REGISTER &
MASK 00111000
ENABLE HEAD LOAD AND
MULTIPLE SECTORS
ENABLE IBM FORMAT
(128 BYTES/SeCTOR)
INTRQ
",'
:,. J.\
AD DR = 11.liE = 0
STORE IN
MEMORY AND
INCR ADDR
NO
NOTE:
NO. OF BYTES TRANSFERRED
SHOULD ENCOMPASS TOTAL
SECTORS TO ALLOW VALID
CRC CHECKS.
YES
READ STATUS
REG & MASK
FOR ERRORS
= 0011 0000
YES
REREA'P OR
PERFORM ERROR ....----_~
DIAGNOSTICS
ADDR =00,
iiE = 0
NO
SEND, FORCE
INTERRUPT CMD
TO CMD REG
=,11010000
ADDR = 00
WE= 0
CONTINUE
"
Figure 3. Ree!ling Successive Sectors of Data
0·86
INS1771-1 Programming Examples (cont.)
SEND RESTORE
CMD TO CMD REG
= 0000 1101
ADDR = 00, WE = 0
ENABLE HEAD LOAD AND VERIFY
ENABLE 6 ms STEP RATE
INTR!l
READ STATUS
REG AND MASK
= 0001 1000
DO DIAGNOSTIC
SUCH AS READ
ADDRESS CMD
YES
ADDR
= 00, m: =0
NO
COMPARE LABEL
AND DERIVE
TRACK AND SECTOR
LOCATION
PERFORM LOCATE
DATA AND
READIN
ASSEMBLED DATA
m: = 0
COMPLETE
Figure 4. Using Track 00 as Table of Contents
characters are lost, by having new data transferred into
the register prior to processor readout, the Lost Data bit
is set in the Status Register. The Read operation con·
tinues until the end of sector is reached.
The Lost Data bit and certain other bits in the Status
Register will activate the Interrupt Request (lNTRO),
output. The interrupt line is also activated with normal
completion or abnormal termination of all controller
operations. The INTRO signal remains active until reset
by reading the Status Register to the processor or by the
loading of the Command Register. In addition, the
I NTRO output is generated if a Force Interrupt command condition is met.
On Disk Write operations, the Data Request output 'is
activated when the Data Register transfers its contents
to the Data Shift Register, and requires a new data byte,
It is reset when the Data Register is loaded with new
data by the processor. If new data is not loaded at the
time the next serial byte is required by the floppy'
disk drive, a byte of zeroes is written on the diskette and
the Lost Data bit is set in the Status Register.
D-87
I.ICI
INS1771-1 FLOPPY DISK DRIVE INTERFACE
The INSI771-1 floppy disk drive interface consists of
head positioning controls, write gate controls, and data
transfers. A 2.0 MHz ± 1% square wave clock is required
at the ClK input for internal control timing. (A 1.0 MHz
clock is required for a miniature floppy disk.)
Head Positioning
Four commands cause positioning of the ReadlWrite
head (see INSI771-1 Commands section). The period of
each positioning step is specified by the r field in bits 1
and 0 of the command word. After the last directional
step, an additional 10 milliseconds of head settling time
takes place. The four programmable stepping rates
(rl ro) are tabulated under the Type I Commands description.
The '1 ro rates can be applied to a three-phase motor or
a step-direction motor through the device interface.
When the 3PM input is connected to ground the device
operates with a three· phase motor control interface,
with one active signal per phase on the three output
signals (PHI, PH2 and PH3). The stepping sequence
is 1·2-3-1 when stepping in and 1-3-2-1 when stepping
out. Phase 1 is active low after Master Reset.
The Step-Direction Motor Control interface is activated
by leaving input 3PM open or connecting it to +5 Volts,
The phase 1 pin (PH I) becomes a step pulse of 4 microseconds width. The phase 2 pin (PH2) becomes a direction control, with a high voltage on this pin indicating
a Step In, and a low voltage indicating a Step Out. The
Direction output is valid a minimum of 24 microseconds
prior to the activation of the step pulse.
When a Seek, Step or Restore command is executed,
an optional· verification of Read/Writehead position can
be performed by setting bit 2 in the command word to
a logic 1. The verification operation begins at the end of
the 10 millisecond settling time after the head is loaded
against the medium. The track number from the first
encountered I D Field is compared against the contents
of the Track Register. If the track numbers compare
and the ID Field Cyclic Redundancy Check (CRC) is
correct, the verify operation is complete. If track comparison is not made but the CRC checks, an interrupt is
generated, the Seek Error status bit (bit 4) is set, and the
Busy status bit is preset. If there is no track comparison
nor a valid CRC, a step is made in the same direction as
specified and the verify operation is repeated. The
additional stepping can be repeated twice to account for
two defective tracks. If no verification is received at
this pOint, the Seek Error (bit 4) is set in the Status
Register.
The Head load (HDL) output controls the movement
of the ReadlWrite head against the diskette. for data
recording or retrieval: It is activated at the beginning of
a Read, Write(E flag on} or Verify operation, ora Seek
or Step operation with the tiead loadbit (h) a logic high; it
remains activated until the third index pulse following
the last operation which uses the Read/Write head.
Reading or Writing does not occur until a minimum of
10 milliseconds after the HDl signal is made active. If
executing the Type II Commands with tne E flag off,
there is no 10 millisecond delay and the head is assumed
to be engaged. The delay is determined by sampling of
the Head load Timing (HL T) input every 10 milliseconds. A low logic state input,· generated from the
Head Load output transition and delayed externally,
identifies engagement of the head against the diskette.
In the Seek and Step commands, the head is loaded at
ttle start of the command execution when the h bit is a
logic 1. In a verify command, the head is loaded before
stepping to the destination track on the diskette whenever the h bit is a logic O.
Disk Read Operation
The 2.0 MHz external clock provided to the device is
internally divided by 4 to form the 500 kHz clock rate
for data transfer. When reading data from a diskette, this
divider is synchronized totransitions of the Read Data
(FDDATA) input. When a transition does not occur on
the 500 kHz clock active state, the .clock divider circuit
injects a clock to maintain a continuous 500 kHz data
clock. The 500 kHz data clock is further divided by 2
internally to separate the clock and information bits.
The divider is phased to the information by the detection of the address mark.
In the internal data read and separation mode, the Read
Data input toggles from one state to the opposite state
for each logic 1 bit of clock or information. This signal
can be derived from the amplified, differentiated, and
sliced Read Head signal, or by the output of a flip-flop
toggling on the Read Data pulses. This input is sampled
by the 2 MHz clock to detect transitions.
The ch ip can also operate on externally separated data,
as supplied by methods such as phase-lock loop, oneshots, or variable frequency oscillators. This is accomplished by grounding the External Data Separator
(XTDS) input. When the Read Data input makes a highto-low transition, the information input to the FDDATA
line is clocked into the Data Shift Register. The assembled 8-bit data from the Data Shift Register are then
transferred to the Data Register.
The normal sector length for Read or Write operations
with the IBM 3740 format is 128 bytes. This fprmat or
binary multiplex of 128 bytes will be adopted by setting
a logic 1 in bit 3 of the Read Track and Write Track
commands. Additionally, a variable sector length feature
is provided which allows an indicator recorded in the ID
Field to control the length of the sector. Variable sector
lengths can be read or written in Read or Write commands respectively by setting a logic 0 in bit 0 of the
command word. The sector length indicator specifies the
number of 16'byte groups, or 16 x N, where N is equal
to 1 to 256 groups. An indicator of all zeros is interpreted as 256 sixteen-byte groups.
Disk Write Operation
After data is loaded. from the processor into the Data
Register, and is transferred to the Data Shift Register,
data will be shifted serially through the Write Data (WD)
output. Interlaced with each bit of data isa positive
clock pulse of 0.5 microsecond (Juration. This signal may
be used to externally toggle a flip-flop to control the
direction of write current flow.
0-88
INS1771-1 FLOPPY DISK DRIVE INTERFACE (cont.)
When writing is to take place on the diskette, the Write
Gate (WG) output is activated, allowing current to flow
into the ReadIWrite head. As a precaution to erroneous
writing, the first data byte must be loaded into the Data
Register in response to a Data Request from the
INSl771-1 before the Write Gate signal can be activated.
detect write current flow when the Write Gate (WG) is
activated. On detection of this fault, the INS1771-1
terminates the current command and sets the Write
Fault bit (bit 5) of the Status Register. The Write Fault
(WF) input should be made inactive when the Write
Gate (WG) output becomes inactive.
Writing is inhibited when the Write Protect (WPRT)
input is a logic 0, in which case any Write command is
immediately terminated,. an interrupt is generated, and
the Write Protect status bit is set. The Write Fault (WF)
input, when activated, signifies a writing fault condition
detected in disk drive electronics such as failure to
Whenever a Read or Write command is received, the
INSl771-1 samples the Ready input. If this input is
logic 0, the command is not executed and an interrupt is
generated. The Seek or Step commands are performed
regardless of the state of the Ready input.
0-89
Physical Dimensions
2.020
15i.J081 -----..:.O.-52-0-----------~J·
MAX
l--~ (13.20B)
!
snUARE
:-------1
I
21
1
0.032
~~
0.590
RAD
(14.986)
~~~~;;;n;;n;orr,;r'_.lX
"i'
,....
.....
.....
Ceramic Dual-In-line Package (0)
Order Number INSl771D-l
NS Package Number J40A
lii
z
-
--1
0.062
(1.575)
0.550 '_0.005
(13.970 '0.121)
RAD
PIN NO.1 INOENT-........
~~~~~J
~.
Plastic Dual-In-Line Package IN)
Order Number INSl771 N-l
NS Package Number N40A
National Semiconductor
CD{poratlon
2900 Semiconductor Drive
Santa Clara. California 95051
Tel.: {40B) 737-5000
TWX: (910) 339-9240
National Semiconductor GmbH
8000 MUnchen 21
Eisenheimerstrasse 61/2
West Germany
Tel: 089/9 15027
Telex: 05-22772
NS International Inc., Japan
Miyake Building
1-9 Yotsuya, ShinJuku-ku 160
TOkyo, Japan
Tel.: (03) 355-3711
TWX: 232-2015 NSCJ-J
National does not assume any responsibility for use 01 any circuitry described; no circuit
National Semiconductor
(Hong Kong) ltd.
8th Floor,
Cheung Kong Eleclronic Bldg
4 Hing Yip Street
Kwun Tong
Kowloon. Hong Kong
Tel.: 3-411241-8
Telex: 73866 NSEHK HX
Cable: NATSEMI
patenl'D~n9b are
NS Electronits Do BrasU
NS Electronics Ply. Ltd.
Avda Bngadeiro Faria lima 844 Cnr. Stud Rd. & Min. Highway
11 Andar Conjunto 1104
Bayswater. Victoria 3153
Jardim Pal1lislano
Australia
Sao Paulo, Brasil
Tel.: 03-729-6333
Telex
Telex: 32096
1121008 CABINE SAO PAULO
implied, and National reserves the right, at any time without notice, to change said circuitry.
~National
Preliminary
~ Semiconductor
JULY 1978
General. Description
W
"tJ
c8
The contents of each counter may be read either
directly or through an auxiliary register. A direct
reading of the counter can be made whenever the
counter is inhibited from counting. A count value can
also be read without interfering with the counting
process. This is done by transferring the counter's
current value to an auxiliary register and then
reading that register. This counter-to-register
transfer can be executed without affecting the
normal count sequence.
The INS8253 is a programmable timer/counter device
contained in a standard, 24-pin dual-in-line package.
The chip, which is fabricated using N-channel silicon
gate technology, provides counting or time-out
services in a microcomputer system. The various
operating modes and other functional characteristics of thelNS8253 are programmed by the system
software.
The INS8253 provides three independent 16-bit down
counters, each of which is capable of count rates in
the range DC to 2MHz. Through software initialization, each counter can be made to operate in anyone
of six modes. The modulus and counting system
used are also specified by system software. The
operating characteristics of any individual counter
can be modified by the software at any time to meet
changing system requirements.
Features
• 3 Individually Programmable 16-Bit Counters
• 6 Operating Modes
• DC to 2MHz Count Rates
• Individual Count Rate and Modulus for Each
Counter
The modulus of any given counter can be changed at
the program's discretion by loading a new value into
the counter. A counter load operation may be limited
to the counter's least significant byte or to its most
significant byte, or it may revise both halves of the
counter.
• Selectable Counting System (Binary or BCD) for
Each Counter
• TRI-STATE@ TTL Drive Capability for Bidirectional
Data Bus
• Single + 5 Volt Power Supply
Count sequences may be in either binary or BCD.
This choice is also individually specified for each
counter by the software.
• 24-Pin Dual-in-Line Package
• MICROBUSTM' Compatible
INS8253 MICROBUS Configuration
P""
INSBZ53
07-00
ClKO
07-00
Ail
WR
C~
Al
AD
GATED
OUTO
II-
r-
Ail
ClKl
I-
Wii
GATEl
cs
I-
OUTl
Al
AD
Lc
'A trademark of National Semiconductor Corporation.
0-91
r---
IGATEZ
IClKZ
OUTZ
© 1978 National Semiconductor Corp.
~
N
en
INS8253 Programmable Interval Timer
M
I
C
R
0
B
U
S
z-
r---
FROM
PERIPHERAL
CONTROL
lOGIC
0;
3
3
D)
C"
CD
-;.
3'
CD
::I
3
...
CD
Ab~olute
Maximum Ratings
AmbientTemperature Under Bias .............. 0 °C to + 70°C
Maximum Voltage to Any Input
with Respect to GND ........................ - 0.5V to + 7V
Storage Temperature .................... - 65°C to + 150°C
Power DIssipation .................................. 1 Watt
Note: Absolute maximum ratings indicate limits beyond which
permanent damage may occur. Continuous operation at these
limits is not intended and should be limited to those conditions
specified under DC Electrical Characteristics.
DC Electrical Characteristics
(TA = O°C to + 70°C; Vec = 5V ± 5%)
Symbol
Parameter
Max
Min
Input Low Voltage
-0.5
VIH
Input High Voltage
2.2
VOL
Output Low Voltage
VOH
Output High Voltage
IlL
Input Load Current
IOFL
Output Float Leakage
Icc
Vee Supply Current
VIL
Unit
0.8
V
Vee + O.5V
V
0.45
V
2.4
Test Conditions
Note 1
V
Note 2
±10
lAA
VIN
±10
lAA
VOUT = Vee to OV
140
mA
= Vee to OV
Note 1: INS8253, IOL = 1.BmA.
Note 2: INS8253,IOH = -150~A.
,
Capacitance
TA = 25°C; Vee = GND
= OV.
Symbol
Parameter
Max
Unit
CIN
Input Capacitance
10
pF
CliO
110 Capacitance
20
pF
Min
Test Conditions
Ic
= 1 MHz
Unmeasured pins returned to Vss
'-
0-92
AC Electrical Characteristics
= O·Cto +70·C;Vcc = 5.0V ± 5%;GND = OV
TA
Bus Parameters:
Parameter
Symbol
Max
Min
Unit
READ CYCLE
tAR
Address Stable Before READ
50
tRA
Address Hold Time for READ
5
ns
ns
tRR
READ Pulse Width
400
ns
tRo
Data Delay from READ (Note 2)
tOF
READ to Data Floating
25
300
ns
125
ns
Address Stable Before WRITE
50
ns
tWA
Address Hold Time for WRITE
30
ns
tww
WRITE Pulse Width
400
ns
tow
Dat'a Setup Time for WRITE
300
ns
two
Data Hold Time for WRITE
40
ns
tRY
Recovery Time Between WRITEs
1
ns
WRITE CYCLE
tAW
,Note 1: AC timings measured at VOH
Note 2: Test conditions: INS8253, CL
= 2.2V, VOL = O,8V,
= 100pF.
Input Waveforms for AC Tests
--I
AO'l'CS~
K
-....tWA
k--tAwT
)(
DATA BUS
I--
c=
'J
'
1- -C --1
tow
v.~
WR
tWD
WRITE TIMING
"'"'=1==
--I )<
--tAR------.1
DATA BUS
j-tRA
l·tRR-1
RD
HI·Z
~
VALID
Hl·Z
!
READ TIMING
2.4
2.2
0.8
> <
TEST
2.2
POINTS
,0.8
0.45
0·93
1-••
Clock and Gate Timing
Min
Max
Unit
tClK
Clock Period
380
DC
tpWH
High Pulse Width
.230
tpWl
low Pulse Width
150
tGW
Gate Width 'High
150
tGl
Gate Width low
100
tGS
Gate Setup Time to ClK t
100
tGH
Gate Hold Time After ClK t
50
Parameter
Symbol
, too
t ODG
Output Delay From ClK
(Note 1)
+
400
ns
ns
ns
ns
ns
ns
ns
ns
Output Delay From Gate
(Note 1)
+
300
ns
Note 1: Test conditions: INS8253, CL = 100pF.
~
elK
I '\ "-1
GATE G
tClK---
......-·PWl-
~.
I.
~"GW
\.
I-- I---'Gl~
.
OUTPUT 0
I
:x<_'00G--'-'"
0·94
--
-'GH
]\~I
...... '001
'
I--
r---\
/\
t~
'GH-
tGs---'"
){
I
INS8253 Functional Block .Diagram
07-00
DATA
-BUS
BUFFER
COUNTER
o
..,i!!!. CL K 0
..,!!ll. GATE 0
110)
OUTO
AO 119)
READ!
WRITE
LOGIC
COUNTER
1
~
Al 120)
~121)
t
CONTROL
WORD
REGISTER
COUNTER
2
VCC~
NOTE: APPLICABLE PINOUT NUMBERS
ARE INCLUDED WITHIN
PARENTHESES.
GNU.!.!:!..
Clock (CLKO-CLK2): Each counter has a separate
clock input that drives the counter.
INS8253 Functional Pin Description
The following describes the functions of all INS8253
input/output pins. Some of these descriptions refer
to internal circuits.
Gate (Gate O-Gate 2): Each counter is individually
controlled by a separate Gate input (1 = enable,O =
inhibit). In some modes, the positive edge of Gate is
used to initiate the counting process. Specific use of
Gate depends on the counter's operating mode.
Details are provided in the section entitled INS8253
Programming.
NOTE
In the following descriptions, a low represents
a logic (0 Volt, nominal) and a high represents
a logic 1 (+ 2.4 Volts, nominal).
°
INPUT SIGNALS
OUTPUT SIGNALS
Chip Select (CS): When low, the chip is selected. This
enables communication between the INS8253 and
the microprocessor.
Output (Out O-Out 2): Each counter has a single output
that indicates whether or not the counter has reached its
terminal count. Specific operation of this output
depends on the counter's mode_ Details are provided in
the section entitled INS8253 Programming.
Read (RD): When low, allows the microprocessor to
read contents of counter specified by AO, A1.
Write (WR): When low, writes control word into
control word register or loads new count value into
selected counter. Destination of data (control word
register or counter 0, 1 or 2) is specified by AO, A 1.-
INPUT/OUTPUT SIGNALS
Data (07 - DO) Bus: This bus, which comprises eight
TRI-STATE input/output lines, provides for bidirectional communication between the INS8253 and the
microprocessor. Control words and count value
bytes are transferred over these lines.
AO, A1: These inputs are used to select one of the
counters for reading or writing or to select the
control word register for writing. AO, A1 may be controlled via address bus lines.
0-95
WRITING CONTROL WORDS
INS8253 Pin Configuration
07
VCC
06
05
Wli
Rii
04
cs
03
Al
02
Au
01
CLK 2
Each counter's mode and counting system (binary or
BCD) are specified by an eight-bit control word. See
figure 1. An I/O write operation with AO, A1 = 11 will
load the control word into the control word register.
The control word contains four fields:
•
07, 06 (SC1, SCO) - This field specifies which
counter will be affected by the other control fields.
•
05, 04 (RL 1, RLO) - A bit pattern of 00 in this field
causes the contents of the selected counter to be
latched in an auxiliary register. The count value
can then be read without inhibiting the counter.
The other three bit patterns specify which byte(s)
of the selected counter will be affected by any
subsequent read/write operations addressed to
that counter.
•
03,02,01 (M2. M1, MO) - This field specifies the
mode 'Of operation for the selected counter.
•
DO (BCD) - This one-bit field specifies the
counting system to be used by the selected
counter.
OUT 2
00
CLK 0
GATE 2
OUT 0
CLK 1
GATE 1
GATE 0
GND
OUT 1
INS8253 Programming
This section provides basic information for programming the INS8253 and describes the methods for
reading counter status. Table 1 summarizes the
control signals needed to writecomrnand words and
new count values into the INS8253 and to read the
contents of individual counters.
Table 1. Bus Control lor INS8253 1/0 Operations
Output Operations
LOAD COUNTER 0
CS
WR
A1
AD
0
0
0
0
0
LOAD COUNTER 1
0
0
LOAD COUNTER 2
0
0
WRITE CONTROL WORD
0
0
RD
1
0
Input Operations
READ COUNTER 0
0
0
0
READ COUNTER 1
0
0
0
READ COUNTER 2
0
0
0
1
0
Any time after a counter is initialized by a control word,
its initial count value can be loaded. This is done by
means of a write operation addressed to that. counter.
Details are' given in the section entitled Loading Initial
Count Value.
Programming of the three counters can be executed in
any sequence, with only two requirements.
1. A counter must be issued a control word before it is
given an initial count value.
2. Read and write operations addressed to a counter
, must conform to the byte-selection rules specified by
the RL 1, RLO field in the control word. For example, if
the counter's RL 1, RLO bits = 10, subsequent counter
load operations addressed to that counter must be
intended for the most significant byte only.
, r - - - - - - - - - - B I T NUMBERS-----------..,\
SElECT,COUNTER
00 - COUNTER 0
01 - CO,UNTER 1
10 - COUNTER 2
11 - NOT VALIa
READ/LOAD
00 -LATCH COUNT'
01 - READ/LOAD
LSB ONL Y
10 - READ/LOAD
MSB ONL Y
11 - REAO/LOAD LSB
FIRST, MSB NEXT
MODE
000 - MODE 0
001 -MOOE 1
xlD - MODE 2
xli - MOOEJ
100 - MODE 4
101 - MODE 5
Figure 1. Control Word Format
0-16·BIT
BINARY
COUNT
1-4 OECADE
BCO COUNT
COUNTER MODE DESCRIPTIONS
Gate can be used to retrigger the counter. Each
positive transition of Gate causes the counter to
begin decrementing from the initial count value.
Figure 2 provides timing information for the six
INS8253 operating modes.
If a new initial count value is loaded during a
count cycle, the new value will not take effect until
the next rising transition of Gate. -
• Mode 0, Timed Interrupt - In this mode, OUT goes
low when the mode is set. The counter begins
_counting eLK cycles when the count is loaded.
OUT remains low until the terminal count is
reached, at which point it goes high and remains
high until either the mode or count is reloaded.
The gate input will inhibit the count when low.
If the counter is loaded with a new value during a
count cycle, counting will stop when the first byte
is loaded and will begin decrementing from the
new value after the second byte is loaded.
• Mode 2, Rate Generator - In this mode, OUT goes
low for one eLK cycle at the end of each count
sequence. The leading edge of each pulse occurs
at the start of the terminal eLK cycle. The counter
will repeat count sequences as long as Gate
remains high. Any positive transition of Gate will
start a new count sequence -at the initial count
value. This allows the counter to be synchronized
by Gate.
• Mode 1, Retriggerable One Shot - In this mode,
OUT goes low on the first eLK after a rising transi·
tion on Gate. OUT goes high again on-the terminal
count.
If a new initial count value is loaded during a
count sequence, the current sequence will run to
completion and the following sequence will then
start at the new initial count value.
MODE 0
MODE 3
CLOCK
CLOCK
I
Wl!"~
OUTPUT
~21i
OUTPUT INTERRUPT
tn = 41
OUTPUT (n::!i)
OUTPUT In'" 4)
~E:i~)~
OUTPUT INTERRUPT
A+8=m
MODE 1
MODE 4
CLOCK
CLOCK
W1i"~
TRIGGER
IGATE)
_ ______~4~3~2~1~O
- - - Ir - - - 4
2
J
(."':'4iI
OUTPUT
1
0
I
LOAD" ~r------------------
TRIGGER~
IGATE)
OUTPUT
---''i.-=-=__
4
3
2
~
OUTPUT
4
3
2
L.....Jr-----
GATE
1
~:'''':'''':''''j-------
4
OUTPUT
MODE 2
4
J
2
1
0
U--
MODE 5
CLOCK
CLOCK
'WAn ~
GATE
4321014)321013)210
OUTPUT
~
0(3)
OUTPUT (n =- 3)
RESET
IGATE)
J
2
1 Ot]) 2
1
0(3) 2
OUTPUT (n '" 4)
J 2
1 0
-~~~~LJr-------
1
~
~
GATE
OUTPUT (n = 4)
Figure 2. Mode Timing Waveforms
0·97
~
LJr----
'-ICI
• Mode 3, Square Wave Generator - In this mode,
the counter generates a square wave signal at the
OUT pin so long as Gale remains high. The period
of the square wave is equal to one count cycle. If
the initial count value is even, OUT will be high for
the first half of slich count sequence and low
during each second half. For an odd count, OUT. is
high for (N + 1)12 counts and low for (N - 1)/2
counts.
Read/load
Conditions
RL1 RLO
o
If a new initial count value is loaded during a
count sequence, the current sequence will run to
completion and the following sequence will then
start at the new initial count value.
Any positive transition of Gate will start a new
count sequence at the initial count value. This
allows the counter to be synchronized by Gate.
• Mode 4, Software Triggered Strobe - In this mode,
OUT is normally high and goes low for one CLK cycle
after the terminal count is reached. Counting is
enabled when Gate is high. Counting is initiated by
loading the modulus.
WR loads 07 - 00 into lSB of counter
selected by A 1, AO.·
o
WR loads 07-00 into MSB of counter
selected by A 1, AO.
1
First WR loads 07-00 into LSB of
counter selected by A1, AO. Next WR
loads 07-00 into counter's MSB.
-A1
AO
0
0
0
1
0
i-
Selects Counter 0
Selects Counter 1
Selects Counter 2
Figure 3. Initial Count Loading Summary
READING COUNT VALUES
The current status of a count sequence can be
examined at any time by the program. This can be
done either by reading the counter contents directly
or by latching the counter contents intQ an auxiliary
register and then reading that register.
If a new initial count value is loaded during -a
count sequence, the current sequence will run to
completion and the fullowing sequence will then
start at the new initial count value.
A low on the Gate input inhibits the count.
A counter can be read directly with th.e following bus
conditions:
• Mode 5, Hardware Triggered Strobe - In this
mode, any positive transition of Gate will initiate a
new count sequence. OUT then goes low for one
CLK cycle when the terminal count is reached.
RD A1 AD
LOADING INITIAL COUNT VALUE
Each counter's modulus is determined by presetting
the counter to the desired value. This is done by
means of one or two, I/O write operations with A1, AO
selecting the counter to be preset. The write opera·
tion loads the contents of the data bus (07 - 00) into
the upper or lower half of the selected counter, as
determined by the control word's RL 1, RLO field.
Figure 3 summarizes the various counter loading
conditions.
To Read Counter 0
000
To Read Counter 1
001
To Read Counter 2
o
0
The count should remain stable during direct reading
of a counter. Stability'is assured by holding the Gate
input low or inhibiting the CLK input (by means of
external logic) for the duration of the read operation.
Counter status can also be sampled without
inhibiting the count sequence. This is done by
issuing a control word to the counter with RU, RLO
00, followed by an 110 read of that counter's
location. The RL 1, RLO bits cause the conterits of the
addressed counter to be latched into the auxiliary
register. The subsequent read operations access the
auxiliary register.
After a counter's initial count value is loaded, it is
ready for operation in the specified mode. It begins
counting ClK cycles when its Gate input goes high.
Each CLK decrements the enabled counter by one
until the full count cycle has been completed.
=
The initial count value of any counter can be changed
by loading a new value into the counter's:
When reading either a counter or the auxiliary
register, the read operation must follow the format
programmed for that counter by RLO and RL 1. Note
00 does
that issuing a latch command of RL 1, RLO
not alter the previously programmed RLO and RL 1.
• LSB only (RU, RLO = 01),
• MSB only (RU, RlO
Effect of Subsequent Write Operation
= 10), or
=
• LSB first, and then MSB (RU, RLO = 11).
D-98
Physical Dimensions
inches (millimeters)
1.290
- --------- 62:7661
MAX
PIN NO.1
WENT
O.2ao
i5.08ii)
UGH}
O.lilO
-,~-~MAX~
: - - - -(15.494jMAX -"-!
____
_MAX
0.050 -0,010
~~ __t~'12)"2541
~ ~ ~ ~.--0~ ~ VV~ VV[1- .
,
-·~l
0.125
-~I
0.070'0.1110
OHIO'I).OID
0018-0.002
(i"i7!i)
(1~17e:-O.254~
(2.5400.2541
(0.451-00511
MIN
24·Lead Hermetic DIP (D)
NS Package Number D24A
0.n62
11.575)
""
0.030
11.600-0.&20
t
.r~--:
f
~
+0.025
0,&25_0,015
(~~6:)
-
,
(15.115~~:~~~}~
(~':;:l
~
0.009-0.015
(0.229-0.381)
_
0.1600:0.1105
(1.~~~--j:-
L
L
(~_]"4'"71
~
.-I
~~ .
0,905'0.381)
I
1__
I
_.1
~--.---.-
:
__1
!
I
I_.. ~
I
~2y~40l
_--1L--.O,018'O.OOr,I
(0.451'0,076)
------t-
0.125
MIN
24·Lead Molded DIP (N)
NS Package Number N24A
0·99
1).015
{iG81i
f3.175j MIN
'·ml
I
"
~National
JULY 1978
D Semiconductor
INS8254 N-Channel Bit Programmable
Per~pherallnterface
General Description
Features
The INSS254 is an LSI device which provides two S-bit
ports of peripheral interfacing capability for microcomputer systems. The I/O chip contains two peripheral
ports of eight bits each. Each of the I/O pins in the two
ports may be defined as an input or an output to provide
maximum flexibility. Each port may be read from or
written to in a parallel (S-bit byte) mode. To improve
efficiency and simplify programming in control-based
applications, a single bit of I/O in either port may be
set, cleared or read with a single microproCessor instruction. In addition to basic I/O, one of the ports, port A,
may be programmed to operate in several types of
strobed mode with handshake. Strobed mode together
with optional interrupt operation permit both high
speed parallel data transfers and interface to a wide
variety of peripherals with no external logic.
•
Single +5-volt power supply
•
Low power dissipation
•
Fully static operation
•
Completely TTL compatible
•
Two S-bit programmable,I/O ports
•
I/O port A has TRI-STATE® capability
•
Handshake controls for strobed mode of operation
•
Single bit I/O operations with single instruction
"tJ
c8
OJ
3
3
Q)
•
Reduces system package count
•
Direct interface with SC/MP-II
CD
•
MICROBUS TM* compatible
"tJ
CD
CT
...
is"
The INS8254 is an n-channel silicon gate device packaged
in a 40-pin dual-in-line package. It operates with a single
5-volt power supply and is fully TTL compatible.
i
i
INS8254 MICROBUS Configuration
r'- cs
r
I
cso
CSI
M
I
C
R
0
B
U
S
AS-AD
AD6-ADO
PORT A BUS
PA7-PAO
07·00
WR
RiJ
RESET
INTR
DB7-0BO
NWDS
INS8254
NRnS
NRST
PORT B BUS
. PB7-PBO
INTR
"'-
IIIC.
*Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
D-101
Absolute Maximum Ratings"
Voltage at Any Pin
Operating Temperature Flange
Storage Temperature Range
Lead Temperature (Soldering, 10 seconds)
,~.
"'
..,0.5 V to +7.0V
O°C to +70°C
-65°C to +150°C
300°C
* Absolute Maximum Ratings are those values beyond whic~ the
safety of ·the device cannot be guaranteed. ,Continuous operation
at these limits is not intended; operation should be limited to those
conditions specified under Electrical Characteri~tics.
DC Electrical Characteristics
(T A within operating temperature range, VCC ; 5 V ± 5% unless otherwise specified.)
Parameter
Conditions
Min
VIH
Logical "1" Input
Volt~ge
2.0
VIL
Logical ,"0" Input Voltage
-0.5
VOH
Logical "1" Output Voltage
IOH ; -100/LA
VOL
Logical "0" Output Voltage
10L; 2.0mA
III
Input Load Current
ILO
Output Leakage Current
ICCI
Power Supply Current
All Outputs Open, TA; 25°C,
NRST";0.8V
Typ
Max
Units
VCC+0.5
V
0.8
V
2.4
V
0.4
V
VIN; OV to 5.25V
±10
/LA
High Impedance State
±10
/LA
60
mA
45
-
AC Electrical Characteristics
(T A within operating temperature range, VCC; 5 V ± 5% unless otherwise specified - see Note 1.)
Parameter
Conditions
Min
Typ
Max
Units
250
liS
READ CYCLE
tsw
STB Pulse Width (Mode 2 only)
tSI
STB .j, to IBF t Delay (Mode 2 only)
300
tps
Peripheral Setup
50
ns
tPH
Peripheral Hold
120
ns
ns
tAH
Address Hold
50
ns
tCH
CS Hold
50
ns
tRD
NRDS .j, to Data Valid
350
ns
tA
Access
560
ns
tco
Chip Select to Output
520
ns
to 1-1
Data Valid After NRDS t
0
125
ns
75
Output L:oad Capacitance
,pF
WRITE CYCLE
tAS
Address Setup
50
ns
tAH
Address Hold
0
ns
tcs
CS Setup
50
ns
tCH
CS Hold
0
ns
tDS
Data Setup
50
ns
tDH
Data Hold
50
ns
0-102
AC Electrical Characteristics (cont'd.)
Parameter
twp
NWDS Pulse Width
tAO
ACK
~
Conditions
Min
Typ
Max
300
ns
to OBF, t (Modes 3 & 4 only)
tACW
ACK Pulse Width (Modes 3 & 4 only)
two
Port Data Valid After NWDS
250
300
300
ACK
~
to Valid Output (Mode 4 only)
tpD
ACK
t
to Hi-Z (Mode 4 only)
300
0
Output Load Capacitance
tWRST Master Reset Pulse
300
v.
Timing Diagrams
Sfii(tNI
,,,-cY--I '" I:: 1
IBftollT)
""~
'1
INT~(OllTl
1:,,,-1 '''1-
peflII'HERAl~~
INPUT
STROBED MODE 2
BASIC INPUT
I
,I--"s-l '" I-
,
~}""
1
1 ,
)CI:I~
r=,1 '''I -
cso AND CSI
°1
'LL-::t:=-I '" 1- '''1-
NRDS
DATABUS _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ~~----
,
I
Read Cycle
=x=
===>Et:
1--'''--1
I
ADS-ADO
CSOANOCSi
1-'''--1
I
=1"'1-
VAUOA[}{IRESS
Nwns
INTR (OUT)
'~=r
iLl"rrr-
I.
I ~-t1-
ili(PB/)
LWO-j
PERIPHEflAL8US
(BASIC OUTPUT OR
MODE3
r
.
--I ";
I ----------------
~DATA
0'ii"F(I'B6)
STROaED OUTPUT)
X
I:IX
::1,,,1OATAilUS
IST
125
OLD DATA
~
VALID NEW DATA
I
I.
1
1
--I '" I:: --l '" j)------------~~----------~--
.
Write Cycle
0-103
ns
ns
ns
75
Note 1: All times measured from a valid logic "0" level = 0.8 V or a valid logic "1" level = 2.0
ns
ns
~
tpE
Units
pF
ns
INS8254 Block Diagram
(36)
N~~
CSO~
CSl(J8)
NWDS~
NRDS~
REA;)
PA7- PM
WRITE
CONTROL
LOIllC'
INTR
081- DBO
P81- PBO
(40)
.....--VCC
{lU);{J3!
.....--GNO
ADS
Basic Functional Description
The 16·bit input/output provides interface capability between a microcomputer and its peripherals bV '" ans of the two
8·bit I/O ports. The ability to program the configuration and operating modes of the I/O ports allows interfacing a
microcomputer to a yvide variety of peripherals with minimum external logic. Major functional blocks of the chip are
shown in figure 1; an operational summary of the chip is provided in figure 2. A description of the chip pinouts and a
summary of the internal chip registers is given below.
(DBl - DBO) Data Bus Buffers
(NWDS) Write Strobe
The data bus buffer is a TR I·STATE, bidirectional, 8·bit
buffer that is used to interface the INS8254 to a micro·
computer data bus. Data, control, and status information
is transmitted to and received from the INS8254 via the
data bus buffers. Execution of aSTOR E instruction by
the microprocessor may be used to transmit data and
control information from the CPU to the I NS8254.
Execution of a LOAD instruction may be used to trans·
mit data and status information from the INS8254 to
the CPU.
NWDS is an active·low write strobe. A Iowan this pin
enables data or control information to be written into
the INS8254.
(PAl - PAO, PBl - PBO) Peripheral Ports A and B
The INS8254 contains two eight·bit I/O ports: port A
and port
Each port consists of an eight·bit output
data latch with buffer and an eight· bit input data latch.
Full flexibility is provided with the ability to define any
bit of the two ports either as an input or as an output.
Bit set, clear and read of all I/O pins are also provided.
Moreover, port A may be operated in strobed input or
strobed output modes.
(ADS-ADO) Address Inputs
The address input bus determines where in the INS8254
communication will take place. The address determines
which I/O or control register will be enabled for com·
munication with the CPU. These pins are normally
connected to the seven low address lines of the micro·
processor.
B:
(MDR) Mode Definition Register
The Mode Definition Register is an internal control
register that determines the operating mode of port A,
This register is write only. If a read operation is per·
formed with the address set to that of the MDR, the
data bus will remain in the high impedance state.
(CSO and CS1) Chip Select Inputs
The combination of a low on CSO and a high on CS1
input pins enables communication between the INS8254
and the microprocessor.
(NRDSI Read Strobe
NRDS is an active· low read strobe. A low on this pin
enables data or status information to be read from the
INS8254.
0·104
(N RST) Master Reset
NRST is .the master reset input for the INS8254 chip.
A low on this pin clears al.lregisters in the I/O portion
of the chip (MDR, ODRA, ODRB, and the port output
data latches) and places the data bus in the high imped·
ance state independent of any other control strobes.
After a master reset, the I/O ports will both be in the
basic I/O mode and configured as inputs.
UNTR) Interrupt Request
which of the I/O pins in the respective port are to be
used as outputs. ODRA controls .the direction of port
A and ODRB controls the direction of port B. Both
ODRs are write only registers. If a read operation is
performed with the address set to that of an ODR, the
data bus will remain in the high impedance state.
The interrupt request (INTR) output is an active high
signal used to interrupt the microprocessor when a
strobed mode data transaction has occured. This signal
is active only when port A is in the strobed mode. I NTR
will be set to a low when a master reset is applied (N RST
set low).
Output Definition Registers - ODRA and ODRB
Associated with each port is an output definition register
(ODR). Each ODR is an eight·bit latch that defines
Pin Names
Pin Configuration
PB6- 1
"I-vee
PB5- ,
391-.87
3B I-NWDS
.84- 3
PBJ- 4
P82- 5
'81- 6
'80- 7
DBl- 8
DB6- 9
085-"
DB4- 11
083- 12
08'- 13
3J I-NRDS
"I-N"Sf
"I-CSii
34l-e51
3J I-GND
"rAD'
31 f--AD5
3C ..... AD4
29 f--AD3
2B f--AD2
INS8254
087 - OBO
DATA BUS
GND
0 VOLTS
21 ~AOl
081- 14
DBO- 15
26 f--ADO
PA1- 16
25
'A6PA5PA4GND-
24 f--pAO
23 -PA1
22 -PA'
21 ~PA3
17
18
19
20
~INTR
1.-_ _ _---1
Figure 1. Pin Identification
BIT OPERATIONS
~
Set Bit Port A
Clear Bit Port A
Read Bit Port A
Set Bit Port B
Clear Bit Port B
I
Read Bit Port B
PORT OPERATIONS
~
1
o
o
o
1
1
I
I
1
1
I
!
o
: I
o
o !
o
o
o
o
~ I oo
o
1
I
:I
o
o
o
Data Bus
o
1
~
Port A
1
o
Port B -+ Data Bus
o
1
o
o
o
Data Bus -+ Pdrt B
1
o
-0
: I
o
o
o
o
o
o
o
o
o
Port A
~
Data Bus
o
o
o
o
o
o
o
o
o
o
o I
o I 0
o
o
1
o
o
1
CONTROL OPERATIONS
Data Bus
-+
Output Definition A
Da.ta Bus
-+
Output Definition B
Data Bus
-+
Mode Definition Register
o
o
o
DISABLE FUNCTION
Master Reset
Data Bus .... Hi·Z
Data Bus .... H i · Z '
D_a_·t_a_B_u_s_~_H_i_.Z______________
___
~ ~ ~ ~ ~ I ~ I ~ I ~ I ~ ~ I ~I ~
I
I
I
I
l~ X_·~ ~_X ~~-L.~X~1L-X~~ ~I__ ~I__ L-X~__
1
- L__
X
__
X
__X
__
1
Xo
__
Figure 2. Truth Table
0-105
II
X
X
X
X
__X__
X I
x__
X
X__
X
I·IC.
Detailed Operation
Mode Definition Register
The mode definition register defines the operating mode
for port A. Port B is always in the basic I/O mode. There
are four operating modes for port A:
Mode 1 - basic I/O
Mode2 - strobed input
Mode 3 - strobed output
Mode 4 - strobed output with TRI-STATE control
In mode 1, basic 1/0, there is no handshaking and data
is simply written to or read from the 'specified port.
Port B is always in this mode. When NRST goes low,
both port A and port B are set to the basic I/O mode
with all bits set to input. Mode 2, strobed input,
provides a means .for transferring data from the peripheral into port A in response to handshake or strobe
signals. Mode 3, strobed output, provides a means for
transferring data from port A to the peripheral in
response to strobes or handshake signals. Mode 4,
strobed output with TRI-STATE control is similar to
mode 3 except that port A is in the high impedance
state until the handshake signal goes active. Figure 3
summarizes what data should be written into the MDR
to place port A in the desired mode. When port A is
operated .in anyone of the three strobed modes, two
pins of port B are used for handshake control functions;
accordingly, only six of the eight port B pins are
available for data inputloutput bits.
Output Definition Registers
Altho,ugh addressed separately from the ports, the
output df'finition registers are an integral part of the I/O
ports as shown in figure 4. This figure shows the input
data latch and output data latch/buffer of a bit in a port
and the bit of ths ODR associated with it. Thus there is
one bit of an ODR associated with each peripheral I/O
pin in port A and port B. If a low or "0" is written into
the ODR, the output data buffer associated with it will
be disabled, and the I/O bit is in the input mode: If a
high or "1" is written into the ODR, the I/O bit is in the
output mode.. When strobed mode operation (modes 2
through 4) is defined for port A via the MDR, it is also
necessary to set up proper input/output definition in
ODRA for port A.
Basic I/O - Mode 1
In the basic I/O mode of operation data. is simply
written to or read from a port without handshake
signals; the interrupt request (INTR) is always low when
port A is operated in this mode. Port B. is always in the
basic I/O mode, whereas the MDR bit 5 (M in figure 3)
must be set to zero to define port A in the basic I/O
mode. Since the MDR, ODRA and ODRB are all cleared
by a master reset, both port A and port B will be in the
basic input mode after a master reset (N RST set low).
Figure 5 shows a timing diagram for basic output. When
the microprocessor performs a'write operation to a.port,
the data on the data bus is latched in the output latch
on the leading edge of the write strobe. The data will
remain valid until another write to the port with new
data occurs. If the new data written is the same as the
old data, then no change will occur so long as the
proper data and strobe timing is maintained.
Figure 6 shbws a timing diagram for basic input. When
the microprocessor reads the port, the peripheral data is
latched in the input latch on the leading edge of the read
strobe. The data bus buffers are enabled so the contents
of the latch are gated on to the system· data bus. The
data remains latched unti I the end of the read cycle
(i.e., until the trailing edge of the read strobeL Latching
the input data in this manner allows the chip to synchronize asynchronous peripheral signals with slow rise and
fall times to the microprocessor.
A port .can have some input pins and 'some output pins,
since th'ere is an ODR latch for each bit in the port. A
write to a pin defined as an input will load a new value
into the output data latch, but since the output data
buffer is disabled, it will have no effect on the I/O pin.
A data. read from I/O pins defined as outputs will read
the data from the output data latch. The data will be
read properly only if the I/O lines are permitted to be
greater than VI H for a logic 1 output' and less than VI L
for a logic 0 output. If the I/O pins are loaded in such a
way that valid levels are not reached, the data read will
not always agree with the data stored in the output data
latch'.
Bit Set, Clear, and Read
In addition to reading and writing each port as an eightbit parallel byte, it is ~Iso possible to set, clear or read
any individual bit in either port. Bit set or clear is performed by doing a write operation with the chip selected
and the proper address. Since the address determines
which bit is operated on and whether it is set or cleared,
the eight data bus lines are all don't-care for a bit set or
clear. This permits the microprocessor to do a bit set
or clear with a single instruction without initially setting
up the accumulator. The three low order bits of the
address determine which bit of the port is set.or cleared
(e.g., AD2 ~ 0, ADl ~ 1 and ADO ~ 0 would indicate
bit 2). Address bit 3 (AD3) determines if port A.or port
B is acted upon. Address bit 4 (AD4) determines if the
operation is a bit set or clear.
When a bit read is performed, the selected bit is placed
on data bus bit 7 (DB7) and all other bits of the data
bus are set to zero, The bit is selected by reading from
the chip with the same addresses described for bit set
and clear. All bit operations are summarized in figure 7.
Besides simplifying programming in control applications,
bit operations are used to control interrupt enable when
port A is in the strobed mode. The timing for bit operations is the same as that for basic input/output except
that, for bit set and bit clear operations, the data bus is a
"don't care." A bit set to a pin whose previous value was
a "1" or a bit clear to a pin whose previous value was a
"0" will not cause that pin to leave its previous value,
even momentarily.
D-106
DB7
DB4
DB5
DB6
DB3
DB2
_.
TS
OUT
M
-
-
OBI
DBO
-
_.
Bit Location
MDR Bit Name
X
X
0
X
X
X
X
X
Basic I/O
X
0
1
X
X
X
X
X
Strobed Input
0
1
1
X
X
X
X
X
Strobed Output
1
1
1
X
X
X
X
X
Strobed Output with TRI·STATE Control
Figure 3. Mode Definition of Port A with MDR
r<1---------~~~------~
INPUT
DATA
LATCH
SET
INTE~:~k _ _...._ _ _ _-:-_~O
01-_ _-_ _ _ _ _-1
BUS
OUTPUT
I
DATA
LATCH
:>-_....__ r/~R~r~ERAL
."
".
RESET
L-_ _ _ _ _ _ _ _ _
_____
roo-
~.o
o~
OUTPUT
DEFINITION
REGISTER
Figure 4. Internal Logic of One Bit of an I/O Port with ODR.
AD6-ADO
x:=:
VALlDA~~RESS
=::>{
~tAH=I
i=tAS---1
CSOANDCSt=X
=-1
1
tcs
DATA 8US----......) (
tDs_1
::
I1
PERIPHE~~~
1-
C
1
'AD6- AD0
1
-l
}tDH
two
:=:X
CSOAND CSt
X'-________
I
VALID DATA
I-tps-l tPH !-=
VfllDADD~:SS
--1
XII::
~t~o-j
I-
1
x==
1-
x=
tAH
-!tCH!-=
NRDS~~
-1 1- =l
NWOS~:=y-~
I
'1~-tA+--1
-JtcHI-
VALI~ DATA
==x
1-
tRD
PERIPHE~~~ _ _ _Ol_D_D_A_T_A_ _.JX'--V-A-l-'D-N-E-W-D-A-T-A---
OATABUS---------FvALIODATA
~.
l - t OH
I ---I
Figure 6. Basic Input Timing
Figure 5. Basic Output Timing
NRDS NWDS
A4 A3 A2 Al AO
BIT SET & CLEAR
Bit Set, Port A
1
0
1
0
B2 Bl
BO
Bit Clear, Port A
1
a
0
0
B2 Bl
BO
Bit Set, Port B
1
0
1
1
B2 Bl
BO
Bit Clear, Port B
1
a
a
1
B2 Bl
BO
Bit Read, Port A
a
1
X
a
B2 Bl
BO
Bit Read, Port B
0
1
X
1
B2 Bl
BO
BIT READ
Selected Bit -+ DB7
0-+ DB6 - DBa
Bit Operations Enabled When
eso ~ 0, eSl
= 1, A6 = 0, & A5 =
82,81, & BO select which bit is selected (80 is least significant bit).
Figure 7. Bit Operations
0-107
DDI
O.
Strobed Input (Port A) - Mode 2
r
that data has been read in the microprocessor and that
the next transaction can now take place. The microprocessor can override IBF by doing a bit set or bit clear
to flB6.
This mode allows data to be read from, a peripheral. in a
two-step transaction. First, the 'peripheral strobes data
into the I NS8254 input latch and notifies the 'microprocessor that data is ready to, be read. Second, the
processor reads the contents of the I'NS8254 input latch
and resets the handshake control signals for the next
transaction tc;> take place. Transferring data in two steps
frees the microprocessor to undertake ottier, tasks in
between data transfers from the port A peripheral:
Figure 8 shows the signal timing and figure 9 shows a
logic diagram for the handshake signals. The handshake
control signals are as follows:
IE (Interrupt Enable)
IE is the output data latch of PB7, whose output is
AN Dep with the interrupt request latch to produce' the
I NTR signal. IE is zero after a master reset (NHST) but
may be written into from the microprocessor by doing a
bit set/dear to PB7.
INTR (Interrupt Request),
STB (Str0b8)
When enabled 'by IE, INTR is an output that is set on
the trailing edge of STB, requesting the microprocessor
to read the data in the port A input data latch. When
the microprocessor responds to read port A, the trailing
edge of NRDS resets INTR. Should IE not be set, INTR
will remain low.
The STB signal is an, active-low strobe generated by a
peripheral to signify that data is valid at the peripheral
bus on the trailing edge of this strobe. This signal is fed
into pin PB7 of the INS8254. STB latches peripheral
bus data into the I NS8254 input data latch on its
trail ing edge. This does not require the INS8254 to be
selected. Should STB pulse low more than once before
the arrival of NRDS, the data stored in the INS8254
input data latch will be the last stored data.
In a multiple-interrupt application, the microprocessor
can poll the INS8254 for the existence of an interrupt
request by doing a bit read of PB7. Being able to read
the INTR status on the microprocessor system bus is
useful in multi-interrupt schemes to'find the originator
of an interrupt.
IBF (Input Buffer Full)
The 18F signal is an output from the INS8254 driven
by pin PB6; IBF is set ,by the leading edge of STB and
is reset by the trailing edge of NRDS when the microprocessor is performing a byte-read from port A. IBF
high tells the peripheral that data is latched in the port A
input data latch. ISF goes low on th,e trailing edge of the
microprocessor NRDS strobe to notify the peripheral
Parallel write operations to port B while port A is in any
one of its strobed modes will leave bits PB6 and PB7
unaffected. Thus, port B now has 6 data I/O bits
associated with it and the handshake bits PB6 and PB7
respond only to valid changes in handshake status or to
bit set/bit clear operations.
/-,sw-I
mIPB11~;
~'slt=.1
--I'r-.,. ...;...---.. .u;.------------(A--'
-'.,
IBFIPBBI _ _
INTRIOUT)~l
'PS-j
PERIPHERAL
INPUT
A06-ADO
'PH
~......_ __
I .
1-=
--~----------~I-----
X!=='A---j
VALIDAOD~~SS I x===
-l'CHr: '
---JX I: I X,--_
_ _ _ _ _- - J
mAND CS1 _ _ _ _ _ _ _ _ _ _ _
~.Co1·
I~
4~OHr'
NRDS
HI·Z
~
O A T A B U S - - - - - - - - - - - - - - - - - - - - - - ~ALlDDATA
Figure 8. Strobecllnput, Mode 2 Timing
0-108 '
\HI·Z
{ ----
Initializing Strobed Input - Mode 2
Prio( to operation, ·an initialization procedure must be
undertaken. The MDR must have a "1" written into bit
5 and a "0" written into bit 6. The ODRA must have
"Os" written into it to identify the pins in port A which
will function in mode 2. The ODRB must have a "0"
written into PB7 in order to make it an input which will
receive STB from the peripheral. Also, PB6 must be
defined as an output so that it can drive the I BF signal.
The remaining six lower bits of ODRB are configured as
needed for the basic input/output transactions occuring
in port B.
TS OUT M
I 07-I 060 I05 I
I-I
I 0 I06 I -I
I-I I-I
1
1
07
MOR
DO
Mode 2
OORB
DO
ODRA = "Os" at mode 2 pins.
..-LM~
Writing to the MDR to define mode 2 operation will
automatically initialize both IBF and INTR in such a
manner that they will be expecting the peripheral to
begin the first I/O transaction with a STB strobe, i.e.,
both INTR and IBF will initialize low when the above
write to the MDR takes place.
Handshake Status
Handshake status control signals IBF and INTR will be
reset by a microprocessor LOAD instruction only if it
is addressed to port A as a byte read. A parallel write or
bit write or bit read to port A will not affect handshake
status. A byte read or write to port B wi II not affect
handshake status either, since PB6 and PB7 are masked
from byte writes to port B when port A is in any of its
strobed modes. It is possible, however, to override I BF
or IE by an appropriate bit write to PB6 or PB7, respec·
tively .
I
----------------
CSOANDCS1==X
'DH
DATAOUS----"""X
VAl+ATA
NWDS~Jr--1
-
-
_--+-I----;,-h
INrR (OUT)
r--/
~"--:l
I
-
OBF(DUT)=PB6-~I-----/I~D,.---+~I-
L" ::1
'.,
ACKIIN)=PB7
Cl
.
.
'\.yr---
' "\,II:-'ACW
I
t WD
,
PERIPHERA~ BUS _ _ _ _O_lD_D_A_T_A_ _-JX~------~v"'~,-L-ID-N-E-W-D-AT_A_ _ _ _ _ _ __
Figure 10. Strobed Output, Mode 3 Timing
D-110
Initializing Strobed Output - Mode 3
Writing to the MOR to define mode 3 operation will
automatically initialize both OBF and INTR such that
the INS8254 will be expecting the first strobed opera·
tion to take place. Both INTR and OBF are initialized
high for mode 3, provided I E is set to a "1." If I E is
set to "0," INTR will not initialize high.
To initialize for mode 3 operation, tHe MOR must have
"ls" written into bits 5 and 6. A "0" must also be
written into bit 7.
The OORA must have "1 s" written into it to identify
the bits of port A which will function in mode 3. The
OORB must have a "0" in PB7 in order to make it an
input which will receive ACK from the peripheral. Also,
PB6 must be defined as an output so that it can drive
the OBF signal. The remaining 6 lower order bits of port
Bare configu red as needed for the basic I/O transactions
Handshake
occurring in port B.
TS OUT M
I0 I I
MDR
D7
DO
I0 I
I-I
D7
Statu~
- Mode 3
Handshake status control signals OBF and INTR will be
reset low by a CPU STOR E instruction only if it is
addressed to port A as a parallel write. A parallel read or
any bit operation to port A will not affect handshake
status. A word read or write to port B will not affect
handshake status either, since PB6 and PB7 are masked
from word writes to port B when port A is in any of its
strobed modes. It is possible, however, to override OBF
or I E by an appropriate bit write to PB6 or PB7, respectively.
Mode 3
ODRB
DO
OORA = "ls" at mode 3 pins.
M:=l
M" 0
PBI
INPUT
ElATA
LATCH
BIT SET PB7
INTERNAL
DATA
PBl
BUS
PBl
INPUT PIN
OUTPUT
DATA
LATCH
IIEI
IACKI
BIT ClEAR PH1
OUTPUT
DEFINITION
REGISTER
t - - - - - -.....ooj0INTERRUPTQ .---.._.J------<~---.,....., ~NU\RpUT PIN
HANDSHAKE
REOUEST
lOGIC
LATCH
PB6
INPUT
DATA
LATCH
BIT SET
PB6
:>--....------.-, PB6
OUTPUT PIN
IOBFI
BIT CLEAR
PB6
OUTPUT
DEFINITION
REGISTER
Figure 11. Strobed Output, Mode 3 Handshake Logic
0-111
Strobed Output with TRI-STATE Control - Mode 4
TS OUT M
This mode, is si~ilar to mode 3 in thatit"uses the same
handshake signals and transfers data in. the same direction. A timing diagram for mode'.Ij is shown in figure 12.
Handshake logic is shown in figur~ 11. Th'e main
difference from mode 3 is the fact that the peripheral
bus is in the TRI-STATE condition at all times except
when ACR is low, enabling the INS8254 to drive the
peripheral bus to its valid state.
I 07 I
.'
I
,
I
t'CS"
Handshake Status - Mode 4
'Handshake status control signals OBF and INTR will be
reset low by a CP-U STORE instruction only if it is
addressed to port A as a parallel write. A parallel read or
any bit operation to port A will. 'not affect handshake
status. A word read or write to port B will not affect
handshake status either, since PB6 and PB7 are masl',
. S
HI·Z
,
PERIPHERALBU .---:--:------':""----~-'""'--:-_;.
Figu";' 12. Strobed Output with TRI.sTATE Mod. 4 Timing
0-112
'PD
r-
).
HI·Z
VALIDDAT~ ( - - - -
SC/MP·II
16·81T I/O
AOOO - A006
AOOO - A010
ADO - A06
+5 V
--
AOll
SIN
CSI
~
SOUT
PA 10 -71
~
_S8
IOS8060
_FO
NROS
ill
IN58254
NRDS
_Fl
P8 10-7)
_F2
NWDS
If PERIP~ERAll
!\PERIP~ERAll
NWDS
SENSE A
INTR
0810 -7)
0810-7)
NRST
NRST
+
f
ADIO~
OUT (0
~
7)
256
TO
2048
A 10-91
ADll
CSi
NRDS
RESET
BYTE ROM
CSi
Figure 13. Typical Application - Three*Chip SC/MP Family System
with 22 Bits of I/O and Up to 2048 Bytes of ROM.
r'-
CS
i> !
A15~AO
eso
A15-AO
INS8080A
CSi
AND
(INS82lS05)
CS;
087·080
M
I
e
R
0
8
U
S
OJ-DO
07-00
MEMR
DBIN
82
+
PORT A BUS
07-00
ViR
ViR
81
J
1'D
RESET
INTR
PA7-PAn
NWOS
INS8254
NRDS
PORT 8 8US
PBJ-PBO
NRST
INTR
MEMW
I NSa228
OJ-DO
STST8
OUT
I/OR
Al0-AO
I/OW-
"'-
RESET
T ......
256
TO
2048
A
IN58224
L~DrJ
eso
A06ADa
INT
01-00
eSI
AS-AD
CHIP
SElECT
lOGIC
All
RESET
CSI
MEMR
BVTE ROM
cst
"\.
Figure 14. Typical Application -
INS8080 System with 16 Bits of
I/O and up to 2048 Bytes of ROM.
0·113
~
•
Physical Dimensions
Inches/Millimeters.
- :L
2.020
(51.J08)
MAX
0.520
1
0.032
(D.all)
,AD
0.590
(14.986)
~~~~;;;n;;n;;n;;r'j
40·Lead Ceramic Oual·in·Line Package (01
0.062
{1.~~~.~
(13.970,(1.127)
PIN NO. llNDENT ~
~~7Fr.T~=r.FT.~7Fr.r~g~~"~,,~,~,~,,fT,"~~"~"rT.,~,~,,~,,~a~~
0.030
0.060 (0.162)
.
' . __ (15.240-15.748)
~.OO_O'6."_
.. _-.J
C
-1 (1.524~
t
~
J.
M.AX.
O.OSIJ
~.
0.210)
!1l0±O.005
(3.302
±O.12l)
. . ~;'5 1-
.=
'..~
-~iD.229-iill" I '
r--- h~~~-;;+O.6J5)---I ~TaU-- I--
f
.'.015
0.625 -0.015
I
I \
I
0.075 '0.015
--
-0.381
I·.
I
D.WO
(2.540)
TVP
--l,0.020
0125 (D.50B)
I
0.018,0.003
--- ---(0.451 '.0.076)
(3:175) MIN
MIN
40·Lead Plastic Oual·in·Line Package (NI
Ordering Information
The INS8254 may be ordered through the local National Semiconductor sales representative or by contacting our
world or internatio,nal headquarters listed below.
For "N" Package: INS8254N
For "0" Package: INS82540
Hatlonal Semiconductor
Corporation
2900 Semico'nductor Drive
Santa Clara, California 95051
Tel.: (406)737-5000
TWX: (91O)'339c9240
National SemIconductor GmbH
8000 Mlinchen 21
,
Eisenheimerstrasse 61/2
West Germany
Tel.: 089/9 15027
Telex: 05-22772
NS Internallonallnc., J.p.n
Miyake Building
1-9 Votsuya, Shlnjuku-ku 160
Tokyo, Japan
Tel.: (03) 355-3711
TWX: 232-2015 NSCJ-J
Nallonal Semiconductor
NS Electronics 00 Brasil
(Hong Kong) Ltd.
8th Floor.
Cheung Kong ElectroniC Bldg
4 Hing Yip Street
Kwun Tong
Kowloon, Hong Kong
Tel.: 3-411241-8
Telex: 73866 NSEHK HX
Cable: NATSE~I
Avda Brigaaeiro Faria- lima 844
11 Andar Conjunto 1104
Jardim PauHstano
Sao Paulo, Brasil
Telex:
1121008 CABINE SAO PAULO
NS Electrpnlcs Ply. ltd.
Cnr. Stud Rd. & Mtn. Highway
Bayswater. Victoria 3153
Australia
Tel.: 03-729-6333
Telex: 32096
National does flat assume any responsibility for use of any circuitry described: no circuit patent licenses are implied, and National reserves the right, at any time without notice, to change-said circuitry.
o -114
'.
~National
Preliminary
~ Semiconductor
JULY 1978.
INS8257 Programmable DMA Controller
General Description
The INS8257 is a Direct Memory Access (DMA) con·
troller contained in a standard 40·pin dual·in·line
package. The chip, which is fabricated using
N·channel silicon gate technology, performs direct
control of high speed data transfers to and from
memory over four separate channels. Data can be
transferred in single bytes or in blocks containing up
to 16,384 bytes.
The channel control registers consist of four 16·bit
DMA address registers and four 16·bit terminal count
(TC) registers. These registers provide the means for
con·trolling DMA transfers on their respective
channels.
The auto load feature permits the repetition of block
transfers or the chaining of data blocks with a mini·
mum of register initialization required.
The INS8257 accepts requests for memory access
from peripheral devices attached to its four DMA
channels and acquires control of the system bus
whenever the DMA request is honored. Competing
requests are resolved according to a programmable
priority scheme (fixed or rotating).
Features
• Four·Channel DMA Controller
• Priority DMA Request Logic
• Channel Inhibit Logic
• Terminal Count and Modulo 128 Outputs
• Auto Load Mode
• Single TTL Clock
• Single + 5V Supply
The mode set register contains fOllr individual
channel enable bits plus option select bits for the
following options: rotating priority, extended write,
TC stop and auto load.
• Expandable
• MICROBUSTM* Compatible
INS8080 Family CPU Group MICROBUS Configuration
A7- AO
ilJiCKijl------I~1
OROO 1 _ - - - - - 1
iiAcKi I------I~I
-tt===:::::1 ~
ORO'
1
1_-----1
J-;:===~~
J-;:===~~
INSB257 DAm
DRozl....
~====::jl :~~~v
HOLD....
HLOA - - - - -__
DACK3
DR031 ...
iiiiSEN_------+
0I8·OI'I+1----11j
INS8212
m
ST.
·Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
Z
~
"tJ
c8;;
3
3
S»
C"
CD
c
3:
»
g
Program control of the INS8257 is exercised via a
mode set register and four pairs of channel control
registers (one pair per channel). A status register is
also Included, which provides terminal count status
for each channel. The status register also contains a
register programming flag, which is a valuable aid in
maintaining byte synchronization when pJogram·
ming channel control registers.
eLK
-
0·115
...a:::s
..CD
Absolute' Maximum Ratings
Maximum Voltage to Any Input with
RespecttoGND ............................. -0.5Vto +7V
Operating Temperature .............•......... O·C to + 70·C
Storage Temperature .................... - 65·C to + 150·C,
Power Dissipation .................. '.•. : ............ 1. Watt
.'
Note: Maximum ratings indicate limits beyond which permanent
damage may occur. Continuous operatlQn at these limits is not
intended ,and should be limited to those conditions specified
under DC Electrical Characteristics.
..
DC Electrical Characteristics
Symbor
VIL
TA
= O·Cto
Parameter
+10'C,Vee
=
+5V ± 5%, GND
= OV
Min
Max
Units
Input Low Voltage
-0.5
0.8
Volts
2.0
Vee + 0.5
Volts
0.45
Volts
Vee
Volts
VIH
Input High Voltage
VOL
Output Low Voltage
VOH
Output High Voltage
2.4
Test Conditions
= 1.6mA
IOH = -15()j.lA for AB,
IOL
DB and AEN
IOH = - 80,..A for others·
IOH = ..,. 80,..A
VHH
HRQ Output High Voltage
Vee
Volts
Icc
Vee Current Drain
120
mA
IlL
Input Leakage
10
,..A
VIN
IOFL
Output Leakage During Float
10
,..A
VOUT (Note 1)
3.3
= Vee
Note 1: Vee> VOUT > GND + O.45V.
I
Capacitance TA = 25°C, Vcc = GND = OV
Symbol
Parameter
Min
Max
Units
CIN
Input Capacitance
10
pF
tc
CliO
I/O Capacitance
20
pF
Unmeasured pins
returned to GND
,
.p·1113
Test Conditions
= lMHz
AC Electrical Characteristics
TA
= o·c to
+ 70·C, Vee
= + 5V
± 5%, GND
= OV (Note 1)
Max
Units
Bus Parameters
READ CYCLE
Symbol
Parameter
tAR
Adr or C~ Setup to
Min
RD~
tRA
Adr or CSt Hold from ROt
TRO
Data Aceess from
tOF
tRR
0
0
RD~
Test Conditions
ns
ns
0
300
ns
DB - Float Delay from ROt
20
150
ns
RD Width
250
(Note 2)
ns
WRITE CYCLE
WR~
tAW
Adr Setup to
20
ns
tWA
Adr Hold from WRt
0
ns
tow
Data Setup to WRt
200
ns
two
Data Hold from WRt
0
ns
tww
WR Width
200
ns'
ns
OTHER TIMING'
tRsTW
Reset Pulse Width
300
tRSTO
Power Supplyt (Vee) Setup to ReseH '
500
tR
Signal Rise Time
20
ns
tF
Signal Fall Time
20
ns
t RSTS
Reset to First IOWR
ns
2
tey
Note 1: All timing measurements are made at the following reference voltages unless otherwise specified:
Input "1" at 2.0V, "0" at O.BV; Output "1" at 2.0V, "0" at O.BV.
Note 2: CL = 100pF.
Timing Waveforms (Peripheral Mode)
Write Timing
Read Timing
'AWl
ADDRESS BUS
twA
I
'AR
==r
___t:=
__
'''''Aw''------j
DATA BUS
CHIP SELECT
)t
~
ADDRESS BUS
y-
IIORO
I ~tWA--
_ _ _~______~~j'DW_1:r~tw~D_~__
~
__
i70Wii
'--'
Reset
'AR~tRA
'
,
DATA BUS
J::::;-;! 'RA
~r='OF
'RD
I!jII!IIiII'&
if}"
Input Waveforms for AC Tests
'RSTW
_
'RST~ ~tww-I
2.0
o,;-
RESET
o~: -----JX
-j--/·tRSTO-lr"-'-------------
vcc--,"
0-117
2.0
TEST
POINTS-;.l'-___
".
AC Electrical Characteristics
"
' '
,
,"
TA = O·Cto +70·C. Vcc = +sv ± S%"GND=OV
DMA (Master) Mode
Parameter
Symbol
Cycle Time (Period)
tCY
t6
' . Clock Active (High)
"
-
Min
Max
Units
0.320
4
/AS
120
O.BtCY
lsst Conditions
"
ns
, ns
".
teis
DRat Setup to 8~(SI,S4)
tOH
ORa. Hold from HLDAt
too
HRat oUDelay from 8t(SI,S4)
at 2.0V)
160
ns"
Load =.1 TIL
. t001
HRat or melay from 8t(SI,S4)
(measured at 3.3V)
160
ns
Load = 1 TIL + (R L =
3.3k), VOH = 3.3V
~Setup
to 8t(SI,S4)
120
0
Tracking· Specification
ns
tHS
HLDAt or
tAEL
AENt Delay from 8t(S1)
100
tAET
AEN. Delay from 8t(SI)
tAEA
Adr(AB) (Active) Delay from AENt(S1)
tFAAB
Adr(AB) (Active) Delay from 8t(S1)
2S0
ns
Load = 1 TTL + SOpF
tAFAB
Adr(AB) (Float) Delay from 8t(SI)
1S0
ns
Load'= 1 TIL + SOpF
tASM
Adr(AB) (Stable) Delay from 8t(S1)
2S0
ns
Load = 1 TIL + SOpF
tAH
Adr(AB) (Stable) Hold from 8t(S1)
300
200
20
ns
ns
·ns
Load = 1 TIL
Load == 1 TIL
Tracking Specification
tASM - SO
ns
Load = 1 TIL + SOpF
tAHR
Adr(AB) (Valid) Hold from Rdt(S1,SI)
60
ns
Tracking Specification
tAHW
Adr(AB) (Valid) Hold from Wrt(S1,SI)
300
ns
Tracking Specification
tFAOB
Adr(DB) (Active) Delay from 8t(S1)
ns
Load = 1 TTL + SOpF
tAFOB
Adr(DB) (Float) Delay from 8t(S;!)
tssT + 20
ns..
Load = 1 TIL + SOpF
tASS
Adr(DB) Setup to AdrStbHS1-S2)
100
ns
T~acking
tAHS
Adr(DB) (Valid) Hold from AdrStbt(S2)
50
ns
Tracking Specification
tSTL
AdrStbt Delay from 8t(S1)
200
ns
Load = 1 TIL
tsn
AdrStbt Delay from 8t(S2)
140
ns
Load = 1 TIL
tsw
Adr'Stb Width (S1-S2)
tCY - 100
ns·
Trackil)g Specification
tASC
Rd. or
Wr(Ext~
70
ns
Tracking Spec'ification
t OBC
Rd. or Wr(Ext). Delay from Adr(DB)
(Float)(S2)
20
ns
Tracking Specification
tAK
DACKt or mefay from 8.(S2,S1) and
TC/Markt, Delay from9t(S3) and
TC/Markt Delay from 8t(S4)
,
250
ns
Load = 1 TIL,
AtAK < 50ns
tOCL
Rd. or Wr(Ext). Delay from 8t(S2) and
Wrt Delay from 8t(S3)
200
ns
Load = 1 TIL + SOpF,
AtOCL ---- rl~t~
ADR IH (lOWER AORj - - - - - - - - - -
~
~
Q.
e
AEN
ADR)
c.o
-----DAtI( 11-3
-------------t~k!---_1_----+_1_~
'FAt
- - - - - DADKG-l
'O",-!]:-
O'ORO/IIORO----------
MEM WRII/a WR -
-
-
- - - -
- - -
__________
READY
----------
TC/MARK _ _ _ _ _ _ _ _ _ _
-----../
1--
",.--....:.~'1\t;;...~.,.------__:;--,--"7--"""".L - - - - - -'
I~,
f
'AHR--I
~-
,f ---------'
IAHW'-_I
\\- _ ~
twwM~-·1
-i----
...-----
.
'- - - - - - - - -
~
\'
't'"
\....
I
-t'
1-
tRS--
-----
M'MRO/IIORO
-- -
MEM ROIIIO WR
~
_
I~--,AK
~
AOR STI
READY
-------
r=\
c--\
I
\
___
TeMARk
INS8257 Functional Block Diagram
(11-13)
(16-30)
07-05
04-00
~ORQ6
CH4
4
Il.ATA
BUS
BUFFER
~
16
BIT
(15)
CHI
DACK6
ORQ 1
16
BIT
OACK 1
ClK
RESET
CHI
A3-AO
cs
ORQI
16
BIT
(II)
OACKI
t
CH3
A7-A4
CONTROL
lOGIC
AND
MODE
SET
REG
READY
HOLD
HlDR
MEMR
MEMW
AEN
ST8
TC
MARK
ORQ3
16
BIT
(34)
6}
--
PRIORITY
RESOLVER
INTERNAL
BUS
NOTE: APPLICABLE PINOUT NUMBERS
ARE INClUDEO WITHIN
PARENTHESES_
0-120
(l5)
"DJiCi(j
..Jill-
VCC
....Jill-
GND
INS8257 Functional Pin Description
The following describes the functions of all INS8257
input/output pins. Some of these descriptions refer
to internal circuits.
Address Enable (AEN): The INS8257 may use this
output to disable the system data bus and the
system control bus. It does this by applying AEN to
the Bus Enable input of the CPU's System Controller
chip (e.g., INS8228). It may also be used to isolate
non·DMA devices from the system address bus
during DMA operations. This is done by applying
AEN to the enable input of each address bus driver
chip to be disabled.
INPUT SIGNALS
Data Request (DRQO- DRQ3): Each channel interface
has a separate DRO input, which is used' by the
peripheral to request DMA cycles. To make a request
for DMA service, a peripheral raises its DRO line and
holds it high so long as DMA cycles are needed. The
peripheral drops its DRO n when the DMA acknow·
ledge (DACK n) is received for the last DMA cycle in
the data block. See Output Signals for a description
of the DACK signal.
Clock (ClK): This clock is supplied by the ~2 (TTL)
output of the INS8224 Clock Generator and Driver
(pin 6) or its equivalent.
Reset: When raised to the high logic level, this input
clears all INS8257 registers and control lines, ex·
cepting the channel address registers. It would nor·
mally be supplied by the INS8224 Clock Generator
and Driver (pin 1) or its equivalent.
Terminal Count (TC): The INS8257 uses this output to
notify the selected peripheral that thE! current DMA
cycle is the last cycle in the data block. If the mode
set register's TC Stop bit (bit 6) is set, the selected
channel is automatically disabled at the end of that
DMA cycle. The INS8257 control logic issues TC
when the terminal count register decrements to 0
(excluding bits 14and 15).
Modulo 128 Mark (MARK): The INS8257 uses this out·
put to notify the selected peripheral that 128 DMA
cycles have occurred since the previous MARK
output. MARK always occurs at 128 (and all multiples
of 128) cycles from the end of the data block.
Chip Select (CS): When this input is low, the chip is
selected. This enables the INS8257 read/write inter·
face logic.
Ready: This input inserts wait states into the
INS8257's memory read and write cycles if required
by the addressed memory.
Hold Acknowledge (HlDA): When high, this input
from the CPU notifies the INS8257 that it has control
of the system bus.
OUTPUT SIGNALS
DMA Acknowledge (DACK3- DACKO): Each channel
interface has a separate DMA acknowledge output.
When a channel's DMA request (DRO) is honored by
the priority logic, that channel's DACK output is
brought low to notify the peripheral that it has been
selected for a DMA cycle.
Address lines (A7-A4): These four TRI·STATE® ad·
dress outputs carry bits 7 through 4 of the memory
address produced by the INS8257 during the addres·
sing phase of DMA cycles.
Hold Request (HRQ): The INS8257 raises this output
in order to request control of the system bus.
Memory Read (MEMR): The lNS8257 brings this TRI·
STATE output low in order to read data from memory
during DMA read operations.
Memory Write (MEMW): The INS8257 brings this TRI·
STATE output low in order to write data into memory
during DMA write operations.
Address Strobe (ADSTB): The INS8257 uses this
output to strobe address bits A15-A8 from the
INS8257's bidirectional data lines (D7 - DO) into the
memory's address buffer (e.g., INS8212).
INPUT/OUTPUT SIGNALS
Data (DO- D7) Bus: This bus, which comprises eight
TRI·STATE input/output lines, provides for bidirec·
tional communication between the INS8257 and the
CPU. When the CPU is initializing the INS8257, this
bus may carry data for the DMA address register,
terminal count register or mode set register. Read
data is carried by these lines when the CPU reads a
DMA address register, a terminal count register or
the status register. During the address phase of a
DMA cycle, these lines carry the eight high·order bits
of the memory address. During the data transfer
phase of a DMA cycle, this bus carries the data byte
being written into or read from memory.
110 Read (1I0R): This is a low·true, bidirectional TRI·
STATE line. It is used by the CPU to read INS8257
registers (DMA address register, terminal count
register or status register) and by the INS8257 to
input data from a selected peripheral during DMA
write operations.
I/O Write (1I0W): This is a low·true, bidirectional TRI·
STATE line. It is used by the CPU to write into
INS8257 registers '(DMA address register, terminal
count register or mode set register) and by the
INS8257 to output data to a selected peripheral
during DMA read operations.
Address lines (A3-AO): These lines, which carry the
four least significant system address bits, are bidi·
rectional. They function as input lines when the CPU
uses them to select one of the INS8257 registers.
They function as output lines during DMA cycles
when they ci;lrry the four least significant bits of the
memory address.
D·121
PROGRAMMING
Pin Configuration
IIDR
40
A7
IIDW
MEMR
MEMW
MARK
READY
HlDA
ADOSTB
AEN
HRD
39
A8
As
cs
elK
RESET
OACK2
OACK3
OiID 3
ORD2
ORO 1
ORO 0
GND
38
37
36
35
4
5
6
A4
A3
A2
AI
AD
33
32
31
30
INS8257
12
13
14
15
16
17
Vec
DO
29
28
27
26
25
24
23
22
21
18
19
20
The OMA address registers and TC registers can be
programmed in any order. However, the mode set
register sho\lld not be programmed until after the
OMA address and TC registers are initialized. This
precaution is intended to prevent invalid access of
memory in the event a spurious OMA request (ORO n)
is generated.
Te
34
10
11
There are three types of registers that must be initial·
ized:
1. Four OMAaddress registers (one per channel)
2. Four terminal count registers (one per channel)
3. One mode set register.
NOTE
For any transfer on the system data bus involv·
ing position·weighted bits, 07
most signifi·
cant bit and DO = least significant bit.
01
02
03
04
OACKO
OACK 1
05
D6
07
=
Because each channel register is two bytes wide,
two I/O read, or write operations are required to read
or load an entire register. When one of these
registers is selected by the CPU, INS8257 logic
automatically accesses the register's lower half for
the first I/O operation and the upper half for the
second I/O operation.
INS8257 Programming Information
This section provides basic information for program·
ming the INS&257 and describes the status infor·
mation available to the programmer. Table 1 sum·
marizes the bus controls needed to output control
information to the INS8257 and to read INS8257
status.
Table 1. INS8257 System Bus Controls
(Note 1)
Function
A,
A2
A,
Ao~
Load ChO DMA AddrFlSS Register
0
0
0
0
0
1
0
Lqad Ch1
0
0
1
0
0
1
0
Load Ch2
0
1
0
0
0
1
0
Load Ch3
0
1
1'
0
0
1
0
Read ChO OMA Addr~ss Register
0
0
'0
0
1
0
0
Read Ch1
0
0
1
0
1
0
0
ReadCh2
0
1
0
0
1
0
0
Read Ch3
0
1
1
0
1
0
0
Load ChO TC Register
0
0
0
1
0
1
0
Load Ch1
0
0
1
1
0
1
0
Load Ch2
0
1
0
1
0
1
0
CS
Load Ch3
0
1
1
1
0
1
0
Read ChO TC Register
0
0
0
1
1
0
0
Read Chl
0
0
1
1
1
0
0
Read Ch2
0
1
0
1
1
0
0
Read Ch3
0
1
1
1
1
0
0
LO~d
1
0
0
0
0
1
0
1
0
0
0
1
0
0
Mode Set Register
Read Status Register
Part of this logic is a firstllast flip·f1op (FILl that
toggles with each I/O operation directed to a channel
register. This flip·flop controls which half of the
register is affected. It is essential that the state of
this flip·flop notbe lost through any of the following
conditions:
• Loading the mode set register when only the lower
half of a channel register has been accessed,
• Clocking CS while either I/OR or I/OW is active,
• Allowing the microprocessor to be interrupted
when only the lower half of a channel register has
been accessed,
• Not completing both halves of. a channel register
read or load sequence.
LOADING DMA ADDRESS REGISTERS
Each channel is assigned a separate 16·bit OMA
address register. This register is loaded with the
starting memory address for the next OMA operation
to be conducted on the corresponding channel.
Loading of a single OMA address register requires
two I/O write operations, with the chip selected by CS
and the register selected by system address lines
A3'-AO.
The OMA address information is presented to the
INS8257 via the system data bus in the following
manner:
DMAAddr
Register
Note 1: First IIOW. or /IDA loads or" reads low-order byte, second IIOW or 1I0R
toads or reads high-order byte.
0·122
First I/OW
LS Byte
D7-00
Second I/OW
MSByte
07-00
LOADING TC REGISTERS
Each channel is assigned a separate TC register.
This register's 14 least significant bits are loaded
with a value equal to one less than the number of
OMA cycles in the channel's next block transfer. For
example, if the next OMA operation for channel 0 will
require 32 (hex 20) OMA cycles, the value 31 (hex 1F)
should be loaded into channel O's TC register.
The terminal count information is presented to the
INSB257 via the system data bus in the following
manner:
TC
Register
Bits 14 and 15 of each TC register are loaded with
mode control bits for the corresponding channel.
There are three possible operating modes to be
specified by these bits. How they are implemented
depends on whether the INSB257 is part of a
standard (Isolated) I/O bus structure or whether a
memory-mapped I/O configuration is used. Figure 1
identifies the mode control functions of TC register
bits 14 and 15 for both I/O schemes.
First 1I0W
LS Byte
07-00
Second I/OW
MS Byte
07-00
LOADING MODE SET REGISTER
The contents of the mode set register are used to
individually enable/disable the four OMA channels
and to selectively implement four optional functions
in the INSB257. Mode set register bit functions are
identified in figure 2 and are described in the follow·
ing paragraphs,.
Bit
'NS8257
MEMRD -'MEMRD
MEMWR -MEMWR
_ _ iiOifii
iiOifii _ _ iiOViR
i7ifWR
Bit
14
Function
15
DMA Verify
a
DMAWrite
a
a
DMA Read
1
a
Illegal
1
1
I
'NS8257
MEMRg'/ORD
MEMWR
IIOWR
110 R0
MEMift)
iiOViR
MEM"Wif
Function
15
DMA Verify
a
DMAWrite
1
a
a
DMA Read
a
1
Illegal
1
1
Figure 1. TC Register Mode Control Bits
AUTO
LOAD
I I I I I I I
6
TC
STOP
0- NORMAL 0
5
EXTENDED
4
l
PRIORITY'
WRITE
I
2
0
CHANNEl ENABLE
CHl
CH2
CHI
DISABLE 0- NORMAL 0- FIXED
O-DISABLE
1 - ENABlE 1 - EXTEND I - ROTATING
1- ENABLE
I
CHO
Figure 2. Mode Set Register Bit Functions
1
Bit
14
7
1 - CHAIN
Loading the mode set register requires a single 110
write operation, with the chip selected by CS and the
register selected by A3-AO.
Memory Mapped 1/0
Bit
_. - MOO~ SET ·REGISTER BITS
"----
r
Isolated 1/0
DMA Channel Enables (Bits 3- 0)
These four bits can be individually set or reset by the
program in order to enable or disable their respective
channels. If the TC stop bit (mode set register bit 6) Is
set, the channel enable bit of the currently selected
channel is automatically reset after Terminal Count
(TC) goes true. This assures the disabling of a
channel after it completes its OMA operations. If the
TC stop bit is not set, the program should reset any
channel enable bit whose OMA address and TC regis·
ters are not currently valid.
Rotating Priority Option (Bit 4)
The OMA verify mode allows pseudo OMA cycles to
be performed in which no data is transferred. In this
mode, the INSB257 responds to OMA requests in the
same manner as in other modes, except that MEMR,
MEMW, IIOR and I/OW are inhibited. This mode
allows a peripheral to cycle through a block of data
for internal control or housekeeping purposes
without affecting memory.
In a OMA read cycle, the INSB257 issues MEMR in
order to read the contents of the addressed memory
location and I/O to write that same data byte into the
selected peripheral.
In a OMA write cycle, the INSB257 issues I/OR in
order to read the data byte presented by the selected
peripheral and MEMW to write that same data byte
Into the addressed memory location.
Loading of a single TC register requires two I/O write
operations, with the chip selected by CS and the
register selected by system address lihes A3-AO.
When this bit = 0 (e.g., following power on reset), the
pri,ority control logic resolves competing DMA
requests according to a fixed priority scheme. In this
fixed priority mode, channel 0 always has highest
priority and channel 3 always has lowest priority.
When mode set register bit 4 is set, the rotating
priority mode is selected. In this mode, 'the
completion of a DMA cycle will cause the channel
just serviced to be assigned lowest priority. All other
channels then move up one priority level. Channel 0
will always have highest priority after a reset or mode
set operation.
Extended Write (Bit 5)
The extended write option is useful when the
INSB257 is accessing a high-speed memory or 110
device whose Ready response is activated by the
leading edge of MEMW or IIOW. Ordinarily, the late
arrival of Ready would cause the INSB257 to insert a
0-123
"ICI
wait state into the DMA cycle, even thOugh the
device is capable of completing the transfer without
that wait state. This unnecessary wait state can be
avoided by use of the extended write option.
When the extended write biUbit 5) is set, the INS8257
generates MEMW or IIOW earlier in the DMA cycle.
This Rermits the memory or 1/0 device td issue its
Ready response earlier in the cycle, thereby avoiding
unnecessary wait states in the INS8257.
TC Stop Blc (Bit 6)
Setting this bit assures that a channel will be
disabled as soon as it performs the last DMA cycle in
a programmed DMA transfer. When Terminal Count
(TC) goes true at the end of a transfer sequence, the
channel enable bit of the currently selected channel
is 'automatically reset. This channel remains
disabled until its channel enable bit is set again by
the program.
The channel 3 register contents are copied into the
channel 2 registers during an update cycle, which
occurs right after the TC output goes true. Each t:ime
an update cycle begins, an update flag is set. This
flag is available to the program via bit 4 of the status
register. Following ie-initialization of .channel 2, the
first DMA cycle of the new data block begins. The
update flag is reset when this first DMA cycle is
completed.
'
To continue a block chaining sequence, the auto load
bit is left in the set state and the channel 3 registers
are programmed for the next data block. Before
loading new parameters into the channel 3 registers,
the update flag should be tested to be certain the
channel 2 update operation has been completed.
NOTE
DMA transfers can be performed on channel 3
when the auto load bit is set. However, any
parameters loaded into channel 3 registers will
be copied into channel 2 registers during the
next update cycle.
Auto Mode (Bit 7)
This mode provides the means for automatically
repeating block transfers or for chaining of multiple
block transfers, without requiring direct control by
the progra"1 between blocks. In this mode, the
channel 2 and channel 3 registers operate in tandem.
The contents of the 'channel 2 registers are used to
control the first DMA operation ..
The channel 3 regis~ers temporarily store the para·
meters required for the next block to be transferred.
Upon completion of the first DMA block transfer, the
contents of the channel 3 registers are automatically
copied into the channel 2 registers and the next
block is transferred under channel 2 register control.
Reading Status Register
Five status bits are available to the system at one
register address.
7
1
0
6
1
0
5
1
0
4
1
3
1
2
1
1
1
I
0
1
I
1" TC AT CHANNEL 0
' - - - - - - 1" TC AT CHANNEL 1
' - - - - - - - '1" TC AT CHANNEL 2
1" TC AT CHANNEL 3
1" UPDATE CYCLE
NOTE
The TC stop ,bit does not affect the channel 2
enable bit 'when in auto load mode.
A channel's TC status bit is set when tnat channel is
selected and the TC output is activated. Reading the
status register rese:ts all TC bits.
When the auto load bit is set, writing new parameters
into the channel 2 registers automatically loads
those same parameters into the channel 3 registers.
In this way, all parameters required for a repeat block
transfer are loaded in a single channel programming
sequence.
The update flag (bit 4) is set at the start of an update
cycle and resets at the end of the update cycle. The
update flag is also cleared by resetting the auto I;oad
bit and by resetting the INS8257. It is not cleared
when the status register is read.
If different parameters are required for the second
block transfer (for chaining block transfers), channel
3 can be programmed afte:r channel 2.
Reading the status register requires a single 1/0 read
operation, with the chip selected by CS and the
register selected by system address lines A3-AO.
0-124
~
.!!
-8
ec
Physical Dimensions
inches (millimeters)
-.$ti·. . .·
";,
• A trademark of National Semiconductor Corporation.
© 1978 National Semiconductor Corp.
Z
~
m
INS8259 Programmable Interrupt Controller
DP8224
CLOCK
GENERATOR
-
0-127
!
W;.;;I\f-oII----=---t
.'.,'.'.
1;;
3
3
S»
C'"
CD
5"
CD
~
c
"9.
Absolute Maximum Ratings
Ambient Temperature Under Bias .............. O·C to + 70'·C
Storage Temperature .................... - 65·C to + 150·C
Voltage on Any Pin with Respect to Ground ..... - 0.5Vto + 7V
Power Dissipation .................................. 1 Watt
Note: Absolute maximum ratings indicate 'limits beyond which
permanent dama!;le may occur. Continuous operation at these
limits is not intended and should be limited to those conditions
specified ,under DC Electrical Characterlsfics.
DC Electrical Characteristics
TA = O·Cto +70·C;Vee = +5V ± 5%,GND
- Symbol.
VIL
I
= OV
Parameter
Min
Input Low Voltage
-0.5
2,0
V1H
Input High Voltage
VOL
Output Low Voltage
VOH
Output High Voltage
VOH.INT
Interrupt Output High Voltage
IIL(IRO-7)
Input Leakage Current tor IRo-7
IlL
Input Leaka\le Current for other Inputs
IOFL
Output Float Leakage
Icc
Vee Supply Current
Max
Typ
Unit
0.8
Test Conditions
V
V
Vee + 0.5V
0.45
= 2mA
= -400"A
V
IOl
2.4
V
IOH
2.4
3.5
V
V
IOH = -400"A
IOH = -50"A
-300
10.
"A
"A
VIN = OV
VIN = Vee
10
"A
p,A
VIN '= Vee to OV
± 10
100
Your
= 0.45V to Vee
mA
Capacitance
= +25·C; Vee = GND = OV
TA
Symbol
Parameter
Min'
Typ
Max
Unit
CIN
Input Capacitance
20
pF
CliO
I/O Capacitance
20
pF
-
/
0·128
Test Conditions
te = 1 MHz
Unmeasured pins to
ground
AC ,Electrical Characteristics
TA
= O·Cto
+70·C;Vcc
= +5.0V
± 5%,GND
= OV
,
Symbol
Parameter
Min
Max
Unit
Test Conditions
BUS PARAMETERS
READ
tAR
CS/Ao Stable before RD or INTA
50
ns
tRA
CSiAo Stable after RD or INTA
5
ns
tRR
RD Pulse Width
420
tRO
Data Valid from RD/INTA
300
tOF
tOF
Data Float after RD/INTA
200
ns
20
ns
CL
ns
CL
CL
= 100pF
= 100pF
= 20pF
-
WRITE
tAW
Ao Stable before WR
50
ns
tWA
Ao Stable afterWR"
20.
ns ,
tww
WR Pulse Width
400
ns
tow
Data Valid to WR (T.E.)
300
ns
two
Data Valid after WR
40
ns
OTHER TIMINGS
tlw
Width of Interrupt Request Pulse
100
ns
tiNT
INT t after IR t
400
ns
tiC
Cascade Line Stable after INTA t
400
ns
Timing Waveforms
Read Timing
~-,. ~
ERIP"Sm'fT
ADDRESS BUS
===:J
r
-l.
-'
~
~
...-:.--- TAR______.
~hj~
i7iiii
"'"=-
TRD_
DATA BUS
oTDF
HI-Z
HI-Z
~
_ _ TAW_
Write Timing
~r
mwmrn
ADDRESS BUS
DATA BUS
_TRA
"l~
=:) r
'-
.
(
TAW _ _
)~
--.
_TWA
~K=
. .---TDW~ _T~D-'
iiifW
~
~TWW~
0-129
-
•.
.-
Timing Waveforms (cont'd.)
~
QtherTiming
,,3tT_~~
~
INT
________\~
_ _ _ _ _ _ _ __
INTA
DS
HI~Z
eO~2
NOTE: INTERRUPT REQUEST MUST REMAIN "HIGH" (AT LEAST) UNTIL LEADING EDGE OF FIRST
INTA~
Initialization Sequence
OATA BUS - - - - - , .
STORE BYTE
L
STORE BYTE 2
STORE BYTE 3
Read Status/Poll Mode
!
\
!
\
/
\
\1
OATA BUS
HI~Z
X
oew3
X
HI~Z
D-130
X
I
OATA
X
HI-Z
INS8259 Block Diagram
INTERNAL
BUS
INS8259 Functional Pin
Description
Write (WR): When low, allows the microprocessor to
write control words (ICWs and OCWs) to the INS8259.
The following describes the functions of all INS8259
input/output pins. Some of these descriptions refer
to internal circuits.
AO: This input is used in conjunction with the WR
signal to write command words Into specific
command registers and with the RD signal to read
specific status registers. AD can be controlled via
one of the microprocessor address lines.
INPUT SIGNALS
Chip Select (CS): When low, the device is selected,
enabling communication between the INS8259 and
the microprocessor.
Read (RD): When low, allows the microprocessor to
read contents of Interrupt Request Register (IRR), In
Service Register (ISR) or Interrupt Mask Register
(lMR) or the BCD value of the current interrupt level.
Interrupt Acknowledge (INTA): This input is generally
provided by the CPU group's System Controller
element (e.g., INS8228). Each INT is acknowledged by
a sequence of three INTA pulses, which causes the
INS8259 to output a three-byte CALL instruction onto
the Data Bus.
0-131
INS8259
Interrupt Request (lR7 -IRa): These eight inputs are
used by external circuits to request servicing by th.e
CPU. A low-to-high transition on one of these lines
represents a new interrupt request from the circuit_
controlling that line. Each positive transition on the
IR lines causes the INS8259 to issue a separate interrupt to the microprocessor. The IR line must remain
high through the first INTA pulse or the INT line will
go .low. Concurrent interrupt requests are resolved
according to their relative positions in the priority
scheme. Typically, an active (high) IR input is reset by
the interrupt service routine associated with. that
line.
.
Program~ing
Information
Two types of command words are used to program
the INS8259. These are:
• Initialization Command Words (ICWs) A
sequence of two or three ICWs is required to'
prepare the INS8259 for operation. Two words are
used if a single INS8259 Is being initialized. A
three-word sequence is used if a master/slave configuration is being initialized. See figure 1 for an
illustration of this sequence. Each ICW is timed by
a separate WR pulse.
• Operation Command Words (OCWs) - These
command words are used to specify various operating characteristics of the INS8259 and to read
the status of certain registers.
Slave Program (SP): This control input is used in
systems having cascaded INS8259s, where one
INS8259 operates as the master and all others
operate as slaves. A high level at the SP input
appOints that INS8259 as master, while a l.ow level
assigns the role of slave.
Figure 1 summarizes the bus controls needed to
output command words to the INS8259 and to read
INS8259 status.
OUTPUT SIGNALS
Interrupt (lNT): This output is applied to the microprocessor's interrupt input (e.g., pin 14 ofINS8080A).
Operation
INPUT/OUTPUT SIGNALS
Data (07 - DO) Bus: This bus, which comprises eight
TRI-STATE input/output lines, prOvides bidirectional
communication between the INS8259 and the CPU.
Command words, status words and CALL instructions are transferred over these lines.
Cascade (CAS2-CASO): These three lines are used in
systems having cascaded INS8259s. The master
INS8259 outputs the three-bit ID ofa slave device on
CAS2-CASO in order to select that slave for interrupt
servicing.
READ
0
0
1
0
(Note 1) IRR, ISR or
Interrupt Level to Data
Bus
1
0
1
0
IMR to Data Bus
WRITE
0
1
X
1
0
0
Data Bus to ICW1
0
0
0
1
0
0
Data Bus to OCW2
0
0
1
1
0
0
Data Bus to OCW3
1
X
X
1
0
0
(Note 2) Data Bus to
OCW1, ICW2, ICW3
Pin Configuration
Data Bus to Hi-Z
Data Bus to Hi-Z
cs
vcc
WR
AO
jfii
INTA
07
IR7
06
IR6
D5
IR5
04
IR4
OJ
IRJ
·02
IR2
01
IR1
DO
IRO
CASO
INT
CAS 1
SP
GNO
Notes:
1. Selection of IRR, ISR or Interrupting Level controlled by
OCW3 written prior to the Read operation.
2. Proper sequence set by on-Chip sequencer.
Figure 1. Basic Control for INS8259 I/O Operations
INITIALIZATION COMMAND WORDS (ICWs)
Figure 2 summarizes the command format for ICW1,
ICW2 and ICW3. There are two variations of the ICW3
format,. one for the master device and one for the
. '
slaves.
CAS2
Figure 3 describes
sequence.
0-132
the
INS8259
initialization
I
AO
01
AO
A1
06
05
A6
A5
04
03
02
01
DO
0
ICWI
1
DEFINED
AS
0
' - - LOWER ROUTINE ADDRESS BITS - - '
(WHEN CALL ADDRESS INTERVAL
IS 8 BYTES, A51S FIXED BY INS8259.
WHEN 4 BYTES, FIXED BY PROGRAM)
AD
DEFINED
AS
I
DEFINED
AS
I
02
01
DO
AIO
A9
AB
04
03
AI5
AI4
AI3
AI2
All
DEFINED
AS
0
1
01
06
05
04
03
02
01
DO
S1
S6
S5
54
S3
S2
SI
SO
I
SLAVE LOCATIONS
o -IR INPUT HAS NO SLAVE
I - IR INPUT HAS SLAVE
'1
06
05
04
03
X
X
X
X
DON'T CARE
Icm
I
UPPER ROUTINE ADDRESS BITS.
X
DEFINED
AS
I
0- MORE THAN
liNE INSB259
IN SYSTEM
I-SINGLE
INSB259IN
. SYSTEM
05
01
1,
CALL
ADDRESS
INTERVAL
O·B BYTES
1-4 BYTES
06
1,
AO
DEFINED
AS
0
01
1,
AO
DEFINED
AS
I
I
"
02
01
DO
102
10,
100
1
I
ICW3
(MASTER)
ICW3
(SLAVE)
1
I
SLAVE 10
(MUST EQUAL THE REQUEST LINE OF MASTER
TO WHICH THE SLAVES INT OUTPUT IS TIED)
~ ~-r~~-r~", ~-r~~-r;02 ~-L~~~C~~~-L~~
Figure 2. Initialization Command Word Format
0-133
1-.1
When an ICW1 is received, the follo,wing functions
are performed i[l the INS8259.
ICW3 Is used only If a master/slave configuration Is
being initialized. The ICW3 Issued to the master
INS8259 Identifies which IR Inputs have slaves
attached. Each bit position corresponds to a
separate IR input (00 = IRO and 07 = fR7). For each
IR input that has a slave attached, the corresponding
ICW3 bit is set to 1. Those IR positions without a
slave are Identified by Os In the corresponding ICW3
bit positions. The ICW3 Is also used to assign threebit identi,flers to the slave INS8259s. A separate ICW3
Is sent to each slave with a unique 10 ,contained in
bits 00- 02. The 10 must correspond to which master
IR 1,lne the slave's INT is connected to. Later, when a
slave's Interrupt request Is selected for servicing, the
master INS8259 automatically Issues byte '1 of the
CALL sequence and sets the 10 assigned to that
slave on the CAS2-CASO lines. This enables the
specified slave to release bytes 2 and 3 of the CALL
sequence.
• The edge sense circuit is reset, which prepares it
to detect a positive transition at an IR input.
• The Interrupt Mask Register (lMR) is cleared.
• The IR7 input is, assigned lowest priority (I.e.,
priority level 7).
• The special mask mode and status read flip·flops
are reset. ICW1 also contains three types of programming information.
- Single INS8259 or Master with Slave(s)
configuration, as set by 01 of ICW1.
- Four- or eight·byte CALL address Interval, as
set by 02 of ICW1.
- If the four-byte CALL Interval Is used, bits
A5-A7 of the CALL address are specified by
05-07 of ICW1 and bits AO-A4 are provided by
the INS8259. If the eight-byte Interval Is used,
bits A6 and A7 are specified by bits 06 and 07
of ICW1" while bits AO-A5 are provided by the
INS8259. Refer to table 1.
The contents of ICW2 specify bits A8-A15 of the
CALL address.
AD
G
ICWl
ICW2
NO
Icwa
READY FOR OPERATION
IN FUllY NESTED MODE
Figure 3. Initlallzallon Sequence
0-134
Table 1.
=4
Interval
=8
Interval
Lower Memory Routine Address
07
06
05
04
03
02
01
DO
07
06
05
04
03
02
01
DO
IR7
A7
1
1
1
1
a
a
A7
A6
1
1
1
a
1
a
a
A5
A5
1
a
a
1
a
a
a
a
a
1
a
a
a
a
A7
A7
A6
A6
A5
A5
a
a
a
a
A5
a
a
a
A7
A7
A6
A6
a
1
A6
a
a
a
1
a
a
a
a
a
a
a
a
a
A7
a
a
a
AS
A6
A6
A6
a
a
A6
A6
A7
A7
A7
A7
a
1
A7
A7
a
a
1
1
1
1
A5
a
a
A6
A6
a
a
A7
A7
a
1
a
a
a
a
A7
A5
A5
1
IR6
IR5
IR4
A6
A6
IR3
IR2
IR1
IRa
D7
AD
I
1
DEFINED
AS
1
I
I
0
DEFINED
AS
0
0
DEFINED
AS
0
I
M7
I
05
I
M6
07
R
I
PRIORITY
ROTATE
I
I
I
DON'T
CARE
ESMM
I
END OF
INTERRUPT
0- NO ACTION
1 - RESET
HIGHEST PRI<
ORITY BIT OF
ISR
I
SMM
l
0
0
1
0
I
No Action
M3
0
DEF<'NED
AS
0
I
0
DEFINED
AS
0
02
I
I
DEFINEO
AS
0
1
~
Reset
Set
Special speCi~11
Mask Mask
OEFINED
AS
1
I
M2
DO
I
M1
I
I
MO
DCW1
I
DO
01
L2
a
a
I
L1
I
Lo
DCW2
' - - - PRIORITY LEVEL CDDE---.I
BCD Level to be Reset
or Put into lowest Priority
0
0
0
1
1
0
0
2
0
1
0
D2
03
1
a
01
02
LO
Ll
L2
I
a
a
a
0
0
1
a
a
03
D4
SMM
0
1
I
INTERRUPT MASK
0- MASK RESET
1 - MASK SET
D5
' - SPECIAL MASK MODE.....I
ESMM
M4
1
a
03
04
EOI
06
X
I
05
SEol
D7
04
M5
06
SPECIFIC
END OF
INTERRUPT
0- NO ROTATE 0 - NO ACTION
1- ROTATE
1 - USE BITS
L2, L1, Lo
AU
I
06
\
AD
1
a
a
1
I
p
4
0
0
1
3
1
1
0
D1
I
ERIS
5
1
0
1
6
,
0
1
1
1
1
1
DO
I I
RIS
oeW3
/
\
POLLING
1
1
CALL address is released. No interrupt will be issued
for an interrupt request so long as a higher level
interrupt is in service.
The polled mode is used when the program assumes
full control of device servicing and does not allow
processor interrupts.
As part of the completion of an interrupt service
routine, the microprocessor must issue an End of
Interrupt (EOI) command, which resets the highest
levellSR bit. After an ISR bit resets, the ISR or IRR bit
then having the highest priority is serviced. The EOI
Is issued by means of an OCW2, in which bit 05 = 1.
To maintain the operating characteristics of the fully
nested mode, bit 07must equal O.
ROTATING PRIORITY MODE
In the rotating priority mode, an interrupt level is
automatically assigned lowest priority immediately
after it is serviced. Highest priority then passes io
the next lower interrupt level. For example, when
servicing of interrupt level 3 is completed (lSR bit 3 is
reset), interrupt level 3 is assigned lowest priority
and interrupt level 4 assumes highest priority.
To operate in rotating priority mode, the EOI issued
at the end of each service routine must have bit 7 and
bit 5 set to 1.
.
The lowest priority can be program·assigned by
means of an OCW2. The OCW2 used to make a
specific priority assignment would need to be in the
range (hex) CO-C7. For example, if the OCW2 value is
C3, interrupt level 3 is assigned lowest priority and
level 4 is given highest priority.
INTERRUPT MASKING AND SPECIAL MASKING
OCW1 can be used to mask off individual interrupt
levels. This command is specified byAO = 1. Each
data bit In OCW1 controls a separate bit in lhe
Interrupt Mask Register (lMR). When an IMR bit is set,
the corresponding !;lIt position is masked at the IRR
and, when in special mask mode, at the ISA.
If an ISR bit is already set at the time it is masked,
the lower priority interrupts willi-emain inhibited by
the masked interrupt level. These lower priority levels
can be enabled by an EOI command that resets that
ISR bit or by issuing a special mask command.
The special mask command is issued by means of an
OCW3, in which bit 05 = 1 and 06 =1. This sets the
special mask mode flip·flop, which enables all
unmasked Interrupt levels. These remain enabled
until the special mask mode flip-flop is reset by an
OCW3 with bit 05 = 0 and bit D6 = 1.
In this mode, the microprocessor disables Its inter·
rupt Input and, when it wishes to service a device
attached to the INS8259, it issues an OCW3 with bit
02 = 1. This' is followed by ariRO pulse with AO = O.
If any IRR bits are set when the RO pulse is received,
the INS8259 sets the ISR bit corresponding to the
highest priority level requesting service. It also
identifies that priority level on the data bus in the
fonowing manner:
07
06
05
04
03
02
01
DO
I I - 1- 1 - I -IW21 W1 1WO 1
I
WO-2 - BCO code of the highest priority level
requesting service.
I-
Equal to a "1" inhere.is an interrupt.
This mode is useful if there is a routine command
common to several levels - so that the INTA
sequence is not needed (and this saves ROM space).
Another application is to use the poll mode to
expand the number of priority levels to more than 64.
END OF INTERRUPT (EO I) AND SPECIFIC END OF
INTERRUPT (SEOI)
.
The EOI command is used in the fully nestedmodl[l to
reset the appropriate ISR bit when that interrupt
level's. service routine Is concluding. The nonspecific EOI command always resets the highest
level ISR bilthat is currently set. For this reason, it is,
reliable only in a fixed priority scheme, such as the
fully nested mode. When priority assignments are
changed from the standard order (I.e., IR7 = lowest),
the specific EOI command must be used. This
-command contains the BCO value of the interrupt
level that is to be reset.
Both specific and non-specific EOI are issued by
means of an OCW2. For the non-specific EOI version,
bit 05 of the command is set to 1 and bit 06 is O. For
the specific EOlversion, bit 050f the command is set
to 1 and bit 06 is set to 1. In the specific EOI
command, the BCO value of the ISR bit to be reset is
contained in command bits 00-02.
READING INS8259 REGISTERS
Four types of status can be read from the INS8259:
the contents of IRR, the contents..of ISR, the contents
of IMR and the BCO value of the interrupt level
requesting service.
The microprocessor reads the contents of IRR by
issuing an OCW3, in which bit DO 0 and bit 01
1.
This Is followed by a RO pulse, during which the
INS8259 places the IRR status on the data bus with
the IRR low order bit (0) present on DO and the IRR
high order bit (7) present on 07. The contents of ISR
are read in the same manner, except that OCW3 bit
DO is set to 1 as well as bit 01. The contents of IMR
can be read by setting AO
1 and Issuing a REi
pulse.
=
contain the slave address code from the trailing edge.
of this pulse until the trailing edge of the third lNTA
pulse. This allows the corresponding slave to release
the two-byte service routine address during the
second and third iiifi'A pulses.
=
Because the CAS lines default to 000, no slave
should be connected to IRO on the master unless
master request Inputs IR1 through IR7 are connected
to slaves.
=
The BCD value of the interrupt level requesting
service Is placed on the data bus in response to a poll
command. This technique was described earlier
under Polled Mode.
Each INS8259 in the system must follow its own
initialization sequence and can be programmed to
operate In any mode. Two EOI commands must be
Issued: one for the master and one for the slave.
CASCADE OPERATION
A typical cascading system is shown In figure 5.
The EOI allows the respective request input to
generate a new interrupt. To allow a slave to have
nested Interrupts, the master should be sent an EPI
as soon as possible in the service routine.
Once a slave line Is activated and later acknowledged, the INS8080 CALL code is released by the
master during the first iiifi'A pulse. The CAS lines will
~
~
MICROBUS
---------- fo-.- --- ------- -- ------
rl
r-.
B
AO
DATA CONTROL INT
BUS
CASU
INS8259
ICAS 2 I-
SLAVE 2
II'
TO
CPU
GROUP
l:r AO
CAS1
DATA CONTROL INT
I
B
BUS
CAS 0
IN58259
CASt
CAS 1
CAS2
CAS 2
SLAVE 1
DATA CONTROL INT
BUS
CASU
INS1259
MASTER
II'
'!1"
.[ !!!.t 11 !t
t
AO
1 UH!!!!
Jc
1 t!!t!!
(INTERRUPT REQUESTS)
Figure 5. Cascads Opsratlon
Instruction
AO
D7
De
D5
D4
D3
D2
D1
DO
O......lIon DaocripUon
A7
A7
A7
A6
A6
1
1
0
1
1
1
0
0
0
Byte 1 initialization, format = 4, single.
Byte 1 InitiaUzation. format = 4, not single.
A6
A5
A5
A5
1
ICW1D
0
0
0
0
A6
A5
1
0
0
ICW2
1
1
2
ICW1A
ICW1B
3
4
ICW1C
5
6
ICW3M
7
ICW38
8
9
0
= 8, single.
= 8, not single.
0
1
0
Byte 1 Initialization, format
0
0
0
Byte 1 Initialization, format
119
A6
Byte 2 Initialization (Address no. 2).
"7
A15 A14 A13 A12 A11 A10
S4
'0
53
82
81
master.
81
Byte 3 initialization -
slave.
M4
M3
M1
MO
Load mask reg, read mask reg.
0
0
0
0
L2
a
L1
a
La
Non-specific EOI.
1
M5
1
1
82
M2
SO
SO
Byte 3 Initialization -
a
1
0
1
a
0
0
0
a
Ro1ato at EO! (lIu10 Mode).
1
1
1
0
a
L2
L1
La
'·1
1
87
S6
0
85
0
OCW1
1
M7
M6
OCW2E
OCW25E
0
0
0
0
10
a
11
OCW2 RE
12
OCW2 R5E
0
0
a
0
Specific EOI, L2, L1, LO coda of ISFF to be
reset.
13
OCW2 R5
a
1
1
14
15
OCW3P
OCW3RIS
0
-
0
16
OCW3 RR
17
OCW35M
a
a
18
OCW3R8M
a
Not••:
1. In the master m098
2. (-) = don't care.
a
-
SP pin::
0
0
a
a
1
1
L2
1
0
0
0
a
a
0
a
a
1
a
1
1
0
1
0
1
a ..
0
1
a
L1
a
1
1
0
0
LO
Rotate at EOI (Specific Mode). L2. L1. LO.
code of line to be reset and selected as
" bottom priority.
L2. L1, LO code of bottom priority line.
a
1
Poll mode.
Read IS register.
0
0
Read requests register.
Set special mask mode.
0
Reset special mask mode.
1; in slave mode SP = 0.,
Figure 6. INS8259 Instruction Set
0-137
I-ICI
tD
e-
Physical Dimensions
Inches (millimeterS)
c
8
a
E
CD
--
1
0.530
C
CD
:is
ca
E
E
r ________
0.045
(:~~~
i1.1iJj
MAX
r
-k========~~~~~T~~~~,-~-t· ~
11.27-0.2541
~-t=~
..
t!
---1
~~~ (:":~:I
1
(0.451 '0.0511
I-
MIN
28-Lead Ceramic Dual-In-Llne Packaga (D)
Order.Numbar INS8259D
NS Packaga Number D28A
z
(1.062
11.575)
'"
I'INND.lINDENT~.
1
1
r-
0.030
iO.7621~
_ 0 ..600-0.620 __ ~."_
(15240-15.148)
~
Z
3
4
5
B
1
_
0.009-0.015
l.--.-~-------:-l
(15.815
~:~~~)
10.229-03811
9
lQ
11
1l
13
1.
0.050
.
~.
.
.(1:"270)
0.130=0.005)
TVP
13.302~0.1211
=Wt~I··I
0625 ,o.025
8
I
1I,1175'0.Q15"-1
IUD5 '11.3811
f--
,~I--'H4111
TVP
I
0.100
L
-rJ.o
--11--
0.0111'11.003
(0.457 '0.016)
~sffii8J
(3.m) MIN,
MIN
28-Lead Plastic Dual-ln-Llne Packaga (N)
Order Number INS8259N
NS Package Number N28A
Nalional Semieondvclor
Corporation
NaUona! Semiconductor GmbH
8000 Mllnchen 21
29QOSemiconductor Drive
61f2EIsenheimerstrasse
SantaCtara.Calilorma95051
Te!: (408) 737·5000
TWX. (910)339-9240
~estGermany
Tel. 089/9 15027
Telex, 05-22772
NS Internalionallnc., Japan
Miyake BUlldmg
t-9Yotsuya,ShtnJuku-kuI60
Tokyo. Japan
Tel. (03)355-3711
TWX 232-2015 NSCJ-J
NS Eleclronics (Hong Kong) Lid.
BthFloor,
Cheung Kong ElectrcllIc Bldg
4 Hmg YIp Street
'
KwunTong
Kowfopn, Hono Kong
"Tel'3-411241-S
Tele~: 73866 NS£HK HX
Cable' NATSEMI
NS ElettronitsDo Brasil
Avda BngadelroFaria lima'S44
11 AndarConjunto 1104
Jardlm Paullslano
Sao Paulo. BraSil
Tele)(: 1121008 CABINE SAO PAULO
NS Electronics ptr. Lid.
Cnr. Stud Rd. & Min. Highway
Bayswater, Viclorla 3153
Australia
Tel: 03-729-6333
Telex. 32096
National ooes nol assume any responsibility for use of any circUitry described; no Circuit patent licenses are Implied; and National reserves the nght. at any time without notice, to change said CirCUitry.
D-138
~National
MARCH 1978
~ Semiconductor
INS829811NS8298E 8080A LLL BASIC Interpreter
General Description
Features
The INS8298/1NS8298E is a 65k MAXI-ROMTM*,
organized into 8192 8-bit words, that is preprogrammed
ore Laboratory (LLL)
with the 8080A Lawrence
BASIC Interpreter. Unp
versions of the
INS8298 and INS8298E are t
pin,800ns
access) and I NS8364E/MM5216
access).
respectively. Both the INS8298 and
complete TTL compatibility and single
supply. Three chip selects controlling TRIoutputs allow for memory expansion.
• Reduces software effort in microcomputer applications
The 8080A LLL BASIC Interpreter operates with the
INS8080A microprocessor system to provide a high-level,
easy-to-use language for performing both control and
computation functions in the INS8080A. Designed for
use in data acquisition and control applications, the LLL
BASIC Interpreter enables the user to write and debug
a program on-line. The interpreter executes source code
statements directly, thus avoiding the need to translate
into machine language. This approach has the advantage
of easier source code manipulation (because the source
is always available). and instant revision of the program
when errors are detected.
• Provides easy source code manipulation and instant
program revision
• Allows immediate-mode execution of program statements to assist program checkout
Ineludes floating-point arithmetic package to provide
I computational capability
. h-speed, machine-language sub-
Available as INS8298 (28 pin, 800 ns access) and
INS8298E (24 pin, 450 ns access)
• MICROBUSTM* compatible
* A trademark of National Semiconductor Corporation.
General System Configuration
R....
411 1412 CLOCKS
'NSl2BI
CONTROL SIGNALS
(RESET. READV)
INSlII8DA
MICROPROCESSOR
BASIC
INTERPRETER
f
HEXADECIMAL
DEBUGGER
(HOT)
.....- - -.....'""1
@ , 978 National Semiconductor Corp.
0-139
The LLL BASIC Interpreter is used to translate, debug,
and execute user-written ASCII programs in read/write
memory (RAM). Each statement is interpreted from its
ASCII BASIC format, and then executed line-by-line.
An LLL BASIC Compiler, written in FORTRAN, will
soon be available in the pubnc~omain.· (See figure 1.)
The BASIC Interpreter accepts both program statements
and control commands. Program statements describe
(to the BASIC Interpreter) operations to be performed
on program data. A program statement preceded by a
line number is ·inserted into the program for later execution at a spot determined by the line number. If no
nne number precedes the statement, it is executed
immediately and then discarded. This latter mode,
known as "immediate" or "direct," is especially valuable
during program checkout. Contml commands specify
actions that alter the status of the us~r's program; for
example, they direct the execution, saving, and retrieval
of programs. Program, statements are summarized in
table 1; control commands are summarized in table 2.
The BASIC Interpreter is located in ROM from 100016
through 2FFF16. BAsIC assumes that its RAM starts
at location 3DD016. The ll1emory map is shown in table
3. All I/O routines used by the INS8298 are located in
the upper 256 bytes of the address space so that a simple
address decoding circuit can allow the substitution of a
special user-supplied I/O package, if necessary. As an
alternative scheme for allowing the user to tailor I/O to
h is own needs, entry poi nts to the interpreter are
provided that allow the page"zero initialization program
to channel all BASIC 1/.0 through ,its own routines.
contents. HDT is called 'from the BASIC Interpreter to
help debug user-developed software, Input and output
data representation is in hexadecimal format. In addition
to the 'usual debugging capabilities, HDT also has
commands to perform the following functions:
• Test a specified range of memory locations
•
Load programs in hexadecimal, NSC, and LLL binary
formats
• Save the contents of a specified range of memory
locations
In addition to the features summarized previously, LLL
BASIC has many capabilities found in other standard
BASIC systems (see tables 1 and 2). However, 'LLL
BASIC does not include built-in operations as intrinsic
functions, e.g., trigonometric or string-manipulation
functions.' Also, LLL BASIC does not permit arbitrary
arithmetic expressions beyond those of the form:
variable op variable
where the first variable in the expression may be preceded by a minus (-); opmay be a plus (+), minus (-),
asterisk' (*) for multiplication, or slash (/) for division;
and either variable can be an identifier, function, Dr
number.
*For additional information, contact:
Argonne Code Center
A hexadecimal debugging routine (HDT) is also,available
on the INS8298 ROM. HDT allows the user to examine
internal registers and memory locations and modify their
Argonne National Laboratory
9700 South Cass Avenue
Argonne, Illinois' 60439
USER'S
ASCII .
PROGRAM
(RAM)
INS8080A
CPU
BASIC
COMPILER
(FORTRAN)
COMPILED
CODE
(PROM OR
ROM)
I
I
___.!A~~~T~~~_____ J
Figure 1. Operation of the LlL BASIC Interpreter and Compiler with the INS8080A
0,140
Table 1. BASIC Statements
1-
Statement
Function
CALL
Calls user·written assembly·language routines.
DIM
Declares a one·dimensional array. (Indexing is from zero.)
'END
Terminates a program and returns control to BASIC.
FOR
Causes program to iterate through a loop a designated number of times.
GET expression
Reads input data from a specified port.
GOSUB nn
Transfers control to a subroutine beginning at line nn.
GOTO nn
Transfers control to line nn.
I F expression THEN nn
Transfers to line nn if the condition of the expression is met.
INPUT list
Allows the user to supply numeric data to a program directly from the terminal.
LET identifier = expression
Assigns the value of an expression to the identifier on the left side of the equal sign.
NEXT
Signals the end of a loop.
PRINT
Allows numeric data and character strings to be printed on the terminal.
PUT expression
Writes output data to a specified port.
REM
Allows comments to be inserted in the program listing.
RETURN
Returns control to the line after the last GOSUB.
STOP
Suspends program execution and returns.
Table 2. BASIC Commands
Command
Function
CONTROLIH (backspace)
Deletes the previous character typed during input.
CONTROLIS
Interrupts program during execution and returns to immediate mode.
DEBUG
Transfers control to the Hexadecimal Debugger program (HDT).
LIS,.
Prints out all or part of a program at the terminal.
PACK
Frees memory locations in RAM to allow the user more working space.
PLiST
Punches paper-tape copy of a program.
PTAPE
Reads in paper-tape copy of program using high-speed reader.
RUN
Begins execution of the program currently in memory.
SCR
Erases the program in memory
Table 3. Memory Map for BASIC Interpreter
ROM Address (hex)
Function
1000 - 100B
BASIC entry points for initialization.
1009 - 27FF
BASIC Interpreter.
2800 - 2EFF
Hexadecimal Debugger (HDT) and loaders.
2FOO- 2FFF
System I/O routines for INS8251 USART (ports EC and ED).
RAM Address (hex)
Function
3DOO - 3DFF
BASIC RAM scratch area (buffers, variables, etc.).
3EOO upward
BASIC user program space.
Top of RAM downward
BASIC stack area.
Chip Selects
CSl
Active low (0).
CS2
Active high (1).
CS3
Active low (0).
I-ICI
D-141
Block and Connection Diagrams
Vee
AI
AD
NC
01
A2
02
A3
0'
O.
A4
01
A1
02
os
A.
A2
D'
D.
8192X8
A4<>--I>--i
ROW DECODE
ROM
AS
O'
CSi
07
CSl
O'
CS3
A7
A12
OUTPUT BUFFER
'ARRAY
••
17
AS
13
16
A.
14
IS
AIO
Al1
12
NC
GNO
07
.,
A7
A'
.,
AIO
A1Z
Al1
NOTE: CS2 AND CS3 NOT
AVAILABLE IN INS8298E.
Absolute Maximum Ratings
m
CSi
CS2
Vee
A6
AB
AS
A'
A4
.12
A3
A2
INS8298E
AI
AD
m
Dl
20
ffi
19
AIO
18
Al1
17
0'
16
07
D'
D2
10
IS
D'
11
GND
12
"
13
os
D4
Chip Selects
(Note 1)
Voltage at Any Pin
Operating Temperature Range
Storage Temperature Range
Power Dissipation
Lead Temperature (Soldering, 10 seconds)
A7
-0.5V to +6.5V
O°C to +70°C
-65°C to +150°C
CS No.
Active Level
Pin No.
I NS8298
1
2
3
lW
+300°C
21
20
0
1
0
19
I NS8298E
1
0
20
DC Electrical Characteristics
(TA within operating temperature range, VCC = +5V ± 5%, unless otherwise specified.) See AC test circuit and switching time
waveforms.
Parameter
(Note 3)
Conditions
Min.
= OV to VCC
ILl
Input Current
VIH
Logical "1" Input Voltage
2.2
VIL
Logical "0" Input Voltage
-0.5
VOH
Logical "1" Output Voltage
IOH
= -200 11A
VOL
Logical "0" Output Voltage
IOL
= 3.2mA
ILOH
Output Leakage Current
VOUT
= 4 V, Chip Deselected
ILOL
Output Leakage Current
VOUT
= 0.45V, Chip Deselected
ICCl
Power Supply Current
All Inputs
Open
VIN
Typ,
(Note 4)
Max.
10
I1A
VCC+1.0
V
0.6
2.4
= 5.25V, Data Output
0-142
Units
V
V
100
0.4
V
10
I1A
-20
I1A
130
mA
Capacitance
Parameter
(Note 3)
Conditions
Min.
Typ.
(Note 4)
Max.
Units
CIN
Input Capacitance (All Inputs)
VIN = OV, T A = 25°C, f = 1 MHz,
(Note 2)
7.5
pF
COUT
Output Capacitance
VOUT = OV, TA
(Note 2)
15.0
pF
= 25°C, f = 1 MHz,
AC Electrical Characteristics
Vee = +5V
(TA within operating temperature range,
waveforms.
± 5%; unless otherwise specified.) See AC test circuit and switching time
Limits
INS8298
Typ.
Max.
Min.
(Note 4)
)
Conditi!,ns
Parameter (Note 3)
tA
Address Access Time
tAC
Chip Select Access Time
See AC Load Circuit. All times except
tOFF measured to 1.5 V level with tr
and tf of input < 20 ns (figures 2 & 3),
tOFF TRI·STATE output level
measured to less than ±20 flA output
tOFF Output Turn OFF Delay
Cycle Time
tc
tAS
1300
550
current.
Address Set·Up Time
Referenced to Chip
Select
INS8298E
Typ.
Min. (Note 4) Max.
Units
450
150
800
450
250
150
ns
ns
150
250
150
ns
ns
450
ns
Note 1: "Absolute Maximum Ratings" are those values beyond which the safety of the device cannot be guaranteed. Except for "Operating
Temperature Range" they are not meant to imply that the devices should be operated at these limits. The table of "Electrical Characteristics"
provides conditions for actual device operation.
Nota 2: Capacitance is guaranteed by periodic testing.
Note 3: Positive true logic notation is used: logical "1" "" most positive voltage level,logical "0" "" most negative voltage level.
Note 4: Typical values are for T A"" 25°C and nominal supply voltage.
AC Test Circuit and Switching Time Waveforms
~
5V
TEST
POINT
Rl
100,F'
J
.....
...."
1.66k
I-
25k "
";1-
...!:-
,
"
I-
'::"
*INCLUDES JIG CAPACITANCE.
r--
2.4V
ADDRESS
0.4V
te
2.4V
1\ 1.5V
CHIP SELECT
0.4V
OUTPUT
I.. tAS"
tOfF
TRI'STATE®
-..t
2.4V
~
Ir1.5V
1.5V
&
ADDRESS
D.4V
2.4V
CHIP SElECT
~>-
O.4V
OUTPUT
DATA VALID
tAC
=x
~te~
~t~
TRI.STATE®~DATA INVALID~ DATA VALID
Figure 3. Address Follows Chip Select'
Figure 2. Address Precedes Chip Select
0·143
.
IIIC.
Physical Dimensions
inches (millimeters)
1.400
-(35.56)
MAX
{13.462J
.,--;rTrr"Ti"rr.rr"1rrrn=i7ri'ii'n'iT'iior.,..n;;nr,;r='
II
1%
13
14
(5.08)
MAX
1:--(1~:;41---:,l
I
~__
0.050 ±O.OtD
(l.2l !0.254)
. _~+TVP1:: :1
!r
0625 to.U25.
.
_I
0.200
0.610
.
0.015
-. (1S.an ~m-~
--,
---iI
0.12S
(3.115)
MIN
28-Lead Cavity Dual-In-Line Package (DI
Order Number INS8298D
NS Package Number D28A
PIN NO.1
WENT''-
24-lead Cavity Dual-In-Line Package (DI
Order Number INS8298ED
NS Package Number D24A
National S.lfticonductor
c;orporatloJl
2900 Semiconductor Driye
Santa Ctara. California 9.5051
Tel: (408) 737·5000
TWX: (910,339-9240
National S.mltonduCior GmbH
as IlIftm.lioaallnc., Japan
NS Electronics (Hong 'onul ltd.
SOOO MUnchen 21
Eisenheimerstrasse 6112
Miyake Building
1-9 Yotsuya, Shinjuku-ku 160
West Germany
Tet: 08919 15027
Telex: 05·22772
Tet: (03) 355·3711
TWX: 232-2015 NSCJ-J
8th Floor,
Cheung: KOIIO Electronic Bldg.
4 Hing Yip Street
Kwun Tong
Kowloon, Hong Kong
Tel: 3-411241·8
Telex: 73866 NSEHK HX
Cable: NATSEMI
Tokyo, Japan
HS EIect,."ic, 00 Brlsil
Avila Brigadeiro Faria Uma 844
11 Anda~,Gonjunto 1104
Jardim Paulistano
Sao Paulo, Bras!1
Telex: 1121008 CABINE SAO PAULO
HI EltCl,.,,!,. Pty. UII.
CnL Stud Rd. & Min. Highway
8ayswaler, Victoria 3153
Australia
Tel: 03-729-6333
Tel.x: 32096
National does not assume any res'ponsibility for use of any circuitry described; no circuil patent licenses are Implied: and National reserves the right. 'at any tIme Without notice, to change said circuitry
0-144
~National
~ Semiconductor
MARCH 1977
Pub. No. 42630545Hl01A
INS1671 Asynchronous/Synchronous Transmitter/Receiver
General Description
The INS1671 is a programmable Asynchronous/Synchronous Transmitter/Receiver (ASTRa) chip housed' in
a standard, 40-pin dual-in-line package. The chip, which is
fabricated using N-channel silicon gate MaS technology,
provides a serial data input/output interface in a busstructured system. The chip is capable of full duplex
operation with synchronous or asynchronous data
communications systems.
The INS1671 is designed to operate on a multiplexed,
bidirectional bus with other bus-oriented devices. The
functional configuration of the INS1671 is programmed
by the system software via the bus and all parallel data
transfers within the system are accomplished over the
bus lines. In addition, the INS1671 contains a provision
for hardwiring a unique 5-bit identification code to a
chip, thereby allowing up to 32 INS1671 devices to be
addressed via the multiplexed bus.
Features
• Synchronous and Asynchronous Full Duplex Operations
• Synchronous Mode Capabilities
- Selectable 5- to 8-Bit C'haracters
•
•
•
•
•
•
•
•
•
•
- T.wo Contiguous SYN Characters Provide Synchronization
Programmable SYN and DLE Characters Stripping
Programmable SYN and SYN-DLE Characters
Insertion
Asynchronous Mode Capabilities
- Selectable 5- to 8-Bit Characters
Line Break Detection
- 1-,1%-, or 2-Stop Bit Detection
- False Start Bit Detection
- Automatic Serial Echo Mode
DC to 1M Baud Rate
8 Selectable Clock Rates (4 Programmable)
Transmission Error Detection Capabilities
- Parity
- Overrun
- Framing
Double Buffering of Data
8-Bit Bidirectional Bus for Data, Status, and Control
Words
All Inputs and Outputs TTL Compatible
On-Line Diagnostic Mode'
Reduces System ComponentCount
Direct Plug-In Replacement for Western Digital
FD1671
INS1671 General System Configuration...---_....,
PERIPHERAL
INTERfACE
SERIAL DATA OUT
SERIAL DATA IN
SYSTEM
PROCESSOR
COMMUNICATIONS
LINK
(MODEM OR
DATASET)
TIMING & CONTROL
lOCAl32Xi""1~~;;!f4~~~
CLOCKS
(R1 - R4)
CONTROL BUS
Ii!JI
MEMORY
© 1977 National Semiconductor Corp.
0·145
.
Absolute Max,imum Ratings
'
"
"
VOO with Respect to Vss (Ground) .......•....... +20 V to -0.3 V:
Maximum Voltage to Any Input ,with Respect to Vss ... +20 V to -0.3 V
Operating Temperature .......................... O°C to +70°C
Stonj~e Temperature .... ; ., ........... : .........55"'C to +1:!5QC
Power Dissipation .................. ; " ........... 1000mW
.
"
,
'
,
;
Note: Maximum ratings indicate limits beyond which permanent damage
may ·occur. Continuous operation at these limits is not intended and
should be ,limited to those conditions specified under dc electrical characteris~ics. '
DC Electrical Characteri,stics
T A = O°C to +70°C. VOO = +12.0V ± 0.6 V. Vss = -5.0V ± 0.25 V. Vss = OV. Vee = .+5 V ± 0.25 V
Symbol
Parameter
Unit
Min
Typ
Max
Conditions
III
I nput Leakage
/.lA,
10
V 1N = Voo
ILO
Output Leakage
/J A
10
VOUT= VOO
Iss
V ss Supply Current
mA
1
leeAVE
Vee Supply Cu rrent
mA
SO
IOOAVE
V 00 Supply Current
mA
VIH,
Input High Voltage
V
Lo~
VIL
Input
VO H
Output High Voltage
Voltage (All Inputs)
V
VOL
Output Low Voltage
V
Vss = -5V
10
2.4
V
O.S
2.S
10,= -100/.IA
0.4
10 = 1.6mA
AC Electrical Characteristics
TA = o°c to+70°C. Voo=+12.0V ±0.6V. vss= -5.0 V ±O:25V. Vee =+5.0\f:l: O.25V. Vss= OV.CLMAX =20pF
"
Symbol
Parameter
Unit
Address Setup Time
tAS
Min
ns
0
150
tAH
Addr~ss Hold Time
ns
tARL
Address to RPL Y Delay
ns'
tes
CSWidth
ns
250
CS to Reply Off Delay
tesRLF
READ CYCLE
ns
0
tARE
Address to R E Spacing
'ns
250
tRECSH
RE and CS Overlap
ns
20
tREes
RE to CS Spacing
ns
250
tREO'
RE to Data Out belay
ns
tRE
RE Widtb
ns
200
250
Typ
Max
400
250
RL =2.7kn
180
CL = 20pF
1000
WRITE CYCLE
J
Adctress to WE spacing
ns
WE and CS Overlap
ns
20
WE Width
ns
200
tos
Data Setup Time
ns
150
tOH
Data Hold Time
tWEes
WE to CS Spacing
tAwE
tWECSH
, tWE
"
ns
100'
ns
250
"
"
0-146
Conditions
1000
Interrupt
Unit
Min
tCSI
CS to IACKI Delay
Parameter
os
tCSRE
CS to R E Delay
ns
tCSREH
CS and R E Overlap
ns
tRECS
R E to CS Spacing
ns
tpi
IACKI Pulse Width
ns
0
250
20
250
200
tlAD
IACKI to Valid ID Code Delay
ns
tRED
RE Off to DAL Open Delay
ns
tlARL
IACKI to RPL Y Delay
ns
tCSRLF
CS to RPL Y Off Delay
ns
tlAIH
IACKI On to INTR Off Delay
ns
til
IACKI to IACKO Delay
ns
tREI
RE Off to IACKO Off Delay
ns
Symbol
Typ
Max
Conditions
250
180
250
250
300
200
250
0
(Note 1)
RL
= 2.7 kn
Note 1: If RE goes low after IACKI goes low, the delay will be from the falling edge of RE.
Timing Waveforms
(j) = VIH (MINI = 2.4 V
(j) = VIL (MAX) = 0.8 v
® = VOH (MIN) = 2.8 V
® = VOL (MAX) = 0.4 V
•
DALBUS
(j)
~
(j)
~
ADDRESS
VALID
0rlAS1
DATA
VALID
'n
Operation or read into the DAL Bus by a Read Opera·
tion. The contents of Control Register 1 can be changed
at any time, while the contents of Control Register 2
(usually loaded first) should be changed only when the
Receiver and Transmitter sections of the chip are both in
the idle mode. The contents of the two control registers
are shown in figures 1> and 2 and ~re described below.
CONTROL REGISTER 1 (CR1) CONTENTS
I
Bit 0: Controls the> generation of the Data Terminal
Ready (DTR) output. When high (logic 11. enables the
Carrier Detector and Data Set Ready interrupts. When
low (logic 0), enables only the >Ring Indicator On inter·
rupt.
Bit 3: When high while in the Asynctjronqus mode, >
enables a parity check> on each receJved character and
the generation of a parity bit for each transmitted
character. When high while in the Synchronous mode;
enables a parity check on each received character.
Bit 4: When high while the Receiver section is enabled
(bit 2 of Control Register 1 is high) and,in the Asynch·
ronous mode, causes the INS1671 to enter the Echo
mode. In this mode, the Transmitted Data (TDATA)
output is obtained directly from the clocked regenerated
data (assembled received> characters) instead of the
transmission characters from the Transmitter Register.
Echoing does not start until a character has been received
and the Transmitter sectiOn is idle. The Transmitter
section does not have to be enabled in the Echo mode.
When high while the Receiver section is disabled and in
the Synchronous mode, causes the generation of a low·
level Miscellaneous (MISC) output from the chip. (This
When low while the Transmitter section is enabled and
in the Asynchronous mode, causes 2 Stop bits to be
transmitted for character lengths of 6, 7, or 8 bits and
1Yo Stop bits for a character length of 5 bits.
When high while the Transmitter section is disabled and
in the Asynchronous mode, causes the generation of a
low-level Miscellaneous (MISC) output from the chip.
(This output may be used for a Make Busy signal on a
Model 103 Data Set, a Secondar>y Transmit signal on a
Model 202 Data Set, and a Dialing Signal on a CBS Data
Coupler.)
When high in coinCidence with a low·level bit 6 of
Control Register 1 while in the Synchronous mode,
enables transmit parity. If bit6> is high or bit 5 is low, no
parity is generated.
Bit 6: When high while the Transmitter section is enabled
and in the Asynchronous mode, holds the Transmitted
Data (TDATA) output of the chip in a SpaCing (low)
condition, starting at the end of any current transmitted
character. In this case, normal transmitter timing continues so that the Transmission Break condition is timed
out after the loading of new characters in the Transmitter Holding Register.
Bit 2: When high, enables the INS1671 to> perform the
following: (1) transfer a new character into the Receiver
Holding Register; (2) update Receiver status bits 1
through 4; and (3) generate Data Received interrupts.
When low, disables> the Receiver section and clears
Receiver status bits 1- through 4.
>
When high while the Receiver section is enabled and in
the Synchronous mode, causes stripping of received
characters that match the contents of the .oLE Register.
In addition, parity checking is >disabled at this time.
Bit 5: When high while the Transmitter section is enabled
and in the Asynchronous mode, causes a single Stop bit
to be transmitted.
When high in coinciden>ce with a high·level bit 6 while in
the Synchronous mode, causes the cOntents of the DLE
Register to be transmitted before the loading of the next
character in the Transmitter Holding Register, as part of
the Transmit Transparent mode.
Bit 1: Controls the enabling of the Request to Send
(RTS) output. When high in coincidence with a lOW-level
Clear to Send (CTS) input, >enables the Transmitter
section of the chip and allows the generation of Transmitter Holding Register Empty (THRE) interrupts.
When low, disables the Transmitter section and disables
the Request to Send (RTS) output. Before the Tr.ansmitter section is disabled, any character in the Transmitter Register is completely transferred to the MODEM
or data set.
NOTE
Only the first character of a break condition of all
zeros (null character) .is echoed when a Line
Break condition is detected. Fo~ all subsequent
null characters with low·level Stop bits, a steady
Marking (high) condition is transmitted until
nor["al character reception is resumed.
output may be used as a New Sync signal on a Model 201
Data Set.) With a 32X clock selected, a high·level bit 4
causes the Receiver bit timing to be synchronized on
Mark·Space (high-low) transi~ions.
When high while in the Synchronous mode, conditions
the Transmitter> section to the Transmit Transparent
mode, which implies that the idle Transmitter time will
be filled by DLE·SYN charaCter transmission and that
a DLE can be> forced ahead of any character in the
Transmitter Holding Register by setting bit 5 of Control
Register 1 high, prior to loading the THR.
Bit 7: When low, the INS1671 is configured to provide
an internal data and control loop (On·line Diagnostic
mode), and the Ring Indicator On interrupt is disablec:i.
When high, the chip is in the normal full duplex configuration and the Ring Indicator ·On interrupt is
enabled.
In the On·line Diagnostic mode, the following occur
(via internal logic):
1. The TDATA output (pin 37) is connected to
the RQATA input (pin 27). The TDATA
output is held in the Marking (high) condition
and the RDATA input>from the MODEM or
c:iata ~et is disregarded.
>
2. The Transmitter clock is also used as the
Receiver clock, when the 1X clock is selected
by bits 0 - 2 of Control Register 1.
3. Bit 0 (Data Terminal Ready) of Control Register
1 is connected to the i5SR input (pin 28).
The DTR output (pin 16) is held in the Off
(high) condition and the DSR input from the
> MODEM or data set is disregarded.
4. Bit >1 (Request to Send) of Control Register 1
is connected to both the CTS input (pin 36)
0-151
1•• 1
and th~ CARi'i" input (pin 29). The RTS'output'
{pin ~8) is held in the Off: 1high) condition '
, and 'the mand ,CAffR inputs from the
MODEM or data set are disregarded.
5. The Mise output (pin 19) is held in the Off'
(high) condition.
" ,
NOTE
3 must: be high (logic 1) for the 1X ,clock
,selection by pits 0 - 2 of Control R~gister 2.
~.t
When high while it'! the Synchronous mode, causes
, stripping of aU OLE andSYNcharacters in,tHe Transmit
Transparent mode ,(selected by bit 6 of Control Register
1) or ,of all SYN characters, in the, Transmit N.onTransparent mode'. In, addition, no Data Received
interrupt is generated and the SYN Detect 'status bit is
set ',high with the reception' of the next 'assembled
character.
CONTROL REGISTER 2 (CR2) CONTENTS
Bits 0 -:- 2: Select clocks for Receiver and Transmitter
, secitions of the chip as indicated below.
B2
B1
So
0
0
'0
0
0
1
1
0
0
1
Clock Selected
0
0
1
1
1
1
1
--,
1
0
1
0,
1
0
1
,
,
"
lXTC an'd rXRC inputs for
Transmitter and Receiver sec·
t'inns, respectively'
Rl (32X)inpui
R2 (32X) input
R3 (32X) input
R4 (32X) input
R4 (64X) input +2
R4 (128X) input +4
R4 (256X) input +8
,
Bit 4: When high while parity is enabled (bit 3 and/or
bit 5 of Control Register 1 are high), selects Odd parity.
When low whil,e, parity is enabled~ selects Eve,n pa,ity.
lJit 5: When high, selects the Synchronous mode for the
"INS1671.When low, selects the Asynchronous mode for
the c~ip.
''
,
,
Bits 6 and7: Select the character length' as indicated
below.
Bit 3: When low while in th,e Asynchronous mode,
selects the 'R 1 (32X) clock inputfor the ,Receiver section
of the chip. When high, selects the same 32X clock rate
for ,the Receiver section, as selected fo~ tIle Transmitter
\
section.
B7
B6'
Character Length'
0,
0'
0
8 bits
7 bits
6 bits
5 bits
1
0
1
1
1
'
BIT NUMBERS ------------------------------------~\
f
I
SYNC/AIYNe
MYNC !!~ANS, ENABLEDI
O-LDD'MODE
a - NON,BREAK MODE
1 - NORMAL MODE 1 - BREAK MODE
a -1% DR UTD' BIT
o- TRANSPARENT
TRANSMIT NON,
MODE
1 - TRANSMIT,
TRANSI'ARENT MODE
,
I
0 - NDN,ECHD MODE
SElECTION
1 .:.. AinO ECHO MODE
1 - SINGLE STOP 81T SELECTION
AlYNC (TRANS: DISABLEDI
SYNC (REC, ENABLED)
D- OLE STRIPPING
8 - MISC OUT • 1
NOT ENABUD
1 - iii1CDUT • 0
1 - OLE STRIPPING
snc(BITB'I)
0- NO PARITV .GENERATED
ENABLED
·'1
=::
SYNC !REC. DISABLEDI
1 - TRANsMIT PAR'TY ENA8~ED :
SYNC lilT 6
0- NO FORCE,OLE
1 - FORe'E OLE
I' I
I
AIlli
:~~:!
0 - RECEIVER 0 - m OUT· 1 0 - m OUT .. 1
DISABLED l-fflDUT.O l~iffiioUT'O
o - NO PARITY ENAIlLED
1_"
'ENABLED"
ION
N$MITTER
1 -RECEIVER
'ENABLED
~
a - RECEIVER PARITY CHECK IS.
DISABLED
1 - RECEIVER PARITY CHECK IS
ENA8LED
.
Figure 1. Control Register 1 Contents
.lXwms
CHARActER LENGTH SELECT
,OO..,IBITS
"01-1 BITS
10=. BITS
l1'58ITS
0- ASYNCHRONOUS'MODE
1 - SV,~~HRONOUS MODE
1 - ODD PARITY SELECT
0 - EVEN PARITY SELECT
" ..: RECEIVER CLOCK
DETERMINED BY
81TS8'Z
o- ~~~W~R CLK ,
SYNC ICRI 'BIT ,'. o~
a-NDSYNSTRIP ,
1 - SYN ST,RI,
SYNC
"
(coi' BIT •• 11
O-'ND DLE-IYNSTRIP
"
,1- DlE..sVN'STRI'
",,'
'Figure 2. Control Register 2 Contents
0·152
CLDC~ SELECT
009 -IX CLOCK
001 - RATE 1 CLOCK
01. - RATE 2 CLOCK
011 - RATE 3 ClO'CK
100 - RATE 4 CLOCK
111-'RATE 4 C'LOCK+2
.. 110 - RAT~ 4 CLP~K+4
111 ,-,~ATE4C~0.CK+'
INS1671 Status Register
The Status Register of the INS1671 holds information
that defines data conditions of the Receiver and Transmittenections of the chip, and the status of the MODEM
or data set. This 8-bit register can be read onto the DAL
Bus by a Read operation. The contents of the Status
Register are shown in figure 3 and are described below.
Bit 0: When high, indicates that no character is contained in the Transmitter Holding Register while the
Transmitter section is enabled. Bit 0 is set high when the
contents of the Transmitter Holding Register are transferred to the Transmitter Register. Bit 0 is reset low
when the Transmitter Holding Register is loaded from
the DAL Bus or when the Transmitter section is disabled
by forcing the CTS input to a high level.
,Bit 1: When high, indicates that the Receiver Holding
Register has been loaded from the Receiver Register
while the Receiver section isenabled. Bit 1 is reset low
when the Receiver Holding Register is read onto the
DAL Bus or when the Receiver Section is disabled by
forcing bit 2 of Control Re'gister 1 to a low level.
Bit 2: When high, indicates an overrun error that occurs.
if the previous character in the Receiver Holding Register
has not been read onto the DAL Bus and Data Received
status bit 0 has not been reset low, at the time a new
character is to be transferred to the Receiver Holding
Register. Bit 2 is reset low when no overrun error is
detected or when the Receiver section is disabled.
Bit 3: When high while DLE stripping is enabled (bit 4
of Control Register 1 is high) and the Receiver section is
enabled, indicates that the character previous to the
presently assembled character matched the contents of
the DLE Register. Bit 3 is reset low when a no match
condition exists between the previous character and the
contents of the DLE Register.
When high while DLE stripping is disabled, parity
checking is enabled (bit 3 of Control Register 1 is high)
/
and the Receiver section is enabled, indicates that the
last received character has a parity error. Bit 3 is reset
low when a correct parity condition exists.
NOTE
Bit 3 is reset low during DLE stripping or parity
error checking when the Receiver section is
disabled.
Bit 4: When high while in the Asynchronous mode,
indicates that the Received Data (R DATA) input contains a low-level Stop bit after the last bit of the character (framing error), while the Receiver section is
enabled, Bit 4 is reset low when the proper high-level
Stop bit is detected.
Wl;len high while in the Synchronous mode, indicates
that the contents of the Receiver Register matched the
contents of the SYN Register, while the Receiver section
is enabled. Bit 4 remains high for the duration of a full
character assembly.
NOTE
Bit 4 is reset low in both modes when the Receiver
section is disabled.
Bit 5: Complement of the active low-level Carrier
Detector (CARR) input.
Bit 6: Complement of the active low-level Data Set
Ready (DSR) input. Bit 6 may be used for a Secondary
Receive signal on type 202 data sets.
Bit 7: When high, indicates that there is a change in the
state of the Data Set Ready (DSR) or Carrier Detector
(CARR) input to the INS1671, while the internal Data
Terminal Ready signal (bit 0 of Control Register 1) is
high (On); or that the Ring Indicator (RING) input is
low (On) while the internal Data Terminal Ready signal
(bit 0 of Control Register 1) is low (Off). Bit 7 is reset
low when the contents of the Status Register are read
onto the DAL Bus.
BiT NUMBERS
DATA SET CHANGE DATA SET READY CARRIER DETECTOR FRAMING ERROR! OLE DETECTI
SYN DETECT
PARITY ERROR
OVERRUN ERROR DATA RECEIVED
Figure 3. Status Register Contents
D-153
1
TRANSMITTER HOLDING
REGISTER EMPTY
INS1671 Operation
Register,' status bits are not updated, .nd the Receiver
interrupt is not activated. After the detection of the first
SYNcharacter, the Receiver section assembles subsequent bits into characters whose length is determined by
the contents of Control Register 2. If, after the first
SYN character detection, a second SYN ch,aracteris
present, the Receiver section enters the synchronized
state until the Receiver Enable Bit (bit 2 of Control
Register 1) is turned Off. If a second successive $YN
character is not detected, the Receiver reverts to the
Search mode.
The following describes the operation of the INS1671
chip. Use the functional block diagram on page 5 as
necessary to follow these descriptions.
ASYNCHRONOUS MODE
Framing of asynchronous characters is provided by a
low· level (logic 0) Start bit at the beginning of a charac·
ter and a high·Jevel (logic 1) Stop bit at the. end of a
character. R~cePtion of a character is initiated on
recognition of the first Start bit after a preceding Stop
bit by a positive transition of the receiver clock. The
Start and Stop bits are stripped off while assembling the
serial input into a parallel character.
The character assembly is completed by the reception
. of the Stop bit after reception of the last character ·bit.
If this bit is high, the character is determined to have
correct framing and the INS1671 is prepared to receive
the next character. If the Stop bit is low, the Framing
Error flag (bit 4 of Status Register) is set and the
Receiver section assumes this bit to be the Start bit of
the next character. Character assembly continues from
this point if the input is still low, when sampled at the
theoretica,l center of the assumed Start bit. As long as
the Receiver input is a Spacing (low) condition, all
zero characters are assembled and error flags and Data
Received interrupts are generated so that Line Break
conditions can be detected. After a character of all
zeroes is assembled along. with a zero in the Stop bit
location, the first received Marking (high) condition
is determined as a Stop bit and this resets the, Receiver.
section to a Ready state for assembly of the next
character.
In the Asynchronous mode, the character transmission
occurs when information contained in the Transmitter
Holding Register is transferred to the Transmitter
Register. Transmission is initiated by the insertion of a
Start bit, followed by the serial output of the character
least significant bit first with parity (if enabled) following
the most significant bit; then the insertion of a 1-, 1%-,
or 2-bit length Stop condition. If the Transmitter
Holding Register is full, the next character transmission
starts after the transmission of the Stop bit of the
present character in the Transmitter Register. Otherwise,
the Marking condition is continuously transmitted until
the Transmitter Holding Register is loaded.
In the Synchronous mode, 'a continuous stream of
characters is transmitted once the Transmitter section is
enabled. If the Transmitter Holding Register is not
loatled at the time the Transmitter Register has completed
transmission of a character, this idle time will be filled
by a transmission of the character contained in the SYN
register in the Transmit Non-Transparent mode, or the
characters contained in the OLE and SYN registers
respectively while in the Transmit Transparent mode of
. operation.
DETAILED OPERATION
Receiver Section: The data input to the Receiver section
is clocked into the Receiver Register by a 1 X Receiver
clock from a MODEM or dataset, or by a local 32X bit
rate clock selected from one of four externally supplied
clock inputs. When using the 1 X clock, the Received
Data (RDATA) input is sampled on the positive transition of the clock in both the Asynchronous and Synchronous modes. When using a 32X clock in the Asynchronous mode, the Receiver sampling clock is phased to
the l'iIIark-To-Space transition of the Start bit of the data
input and defines, through clock counts, the center of
each received data bit within +0%, -3% at the positive
transition 16 clock periods later.
In the Synchronous mode, the Receiver sampling clock
is phased to all Mark-To-Space transitions of the data
inputs when using a 32X clock. Each transition of the
data causes an incremental correction of the sampling
clock by 1/32 of a bit period. The sampling clock can be
immediately phased to every Mark-To-Space data
transition by setting bit 4 of Control Register 1 high,
while the Receiver section is disabled.
In order to allow re-transmission of data received at a
slightly faster character rate, means are provided for
shortening the Stop bit length to allow transmission of
characters to occur at the same rate as the reception of
characters. The Stop bit is shortened by 1/16 of a bit
period for 1-Stop bit selection and 3/16 of a bit period
for 1%- or 2-Stop bit selection, if the next character is
ready in the Transmitter Holding Register.
SYNCHRONOUS MODE
Framing of characters is carried out by a special Synchronization (SYN) Character Code transmitted at the
beginning of a block of characters. When the Receiver
section is enabled, it searches for two continuous characters matching the bit pattern contained in the SYN
Register. During the time the Receiver section is searching, data is not transferred to the Receiver Holding
When the complete character has been shifted into the
Receiver Register, it is then transferred to the Receiver
Holding Register; the unused, higher number bits are
filled with zeroes. At this time, the Receiver status bits
(Framing Error/SYN Detect, Parity ErrorlDLE Detect,
Overrun Error, and Data Received) are updated in the
Status Register and the Data Received interrupt is
activated. Parity Error is set, if encountered while the
Receiver parity check is enabled in Control Register 1.
The Overrun Error flag (bit 2 of Status Register) is set
if the Data Received status bit (bit 1) is not cleared
through a Read operation by an external device, when
a new character is ready to be transferred to the Receiver
Holding Register. This error flag indicates that a character has been lost, as new data is lost and the old data
and its status flags are saved.
The characters assembled in the Receiver Register that
match the contents of the SYN or DLE Register are not
0-154
loaded into the Receiver Holding Register, and the
Data Received interrupt is not generated, if bit 3 (SYN
Strip) of Control Register 2 or bit 4 (OLE Strip) of
Control Register 1 are set respectively; the SYN-DET
and DLE-DET status bits are set with the next non-SYN
or non-OLE character. When both the SYN Strip and
OLE Strip bits are set (Transmit Transparent mode),
the DLE-SYN combination is stripped. The SYN comparison occurs only with the character received after the
OLE character. If two successive OLE characters are
received, only the first OLE character is stripped. No
parity check is made while in this mode.
section selects one of the four selected rate inputs and
divides the clock down to the baud rate. This clock is
phased to the Transmitter Holding Register Empty flag
(bit 0 of Status Register) such that transmission of
characters occurs within two clock times of the loading
of the Transmitter Holding Register, when the Transmitter Register is empty.
Transmitter Section: Iriformation is transferred to the
Transmitter Holding Register by a Write operation.
Information can be loaded into this register at any time,
even when the Transmitter section is not enabled.
Transmission of data is initiated only when the Request
to Send (RTS) bit (bit 1 of Control Register 1) is set
high and the Clear to Send (CTS) input is low. Information is normally transferred from the Transmitter
Holding Register to the Transmitter Register when the
latter has completed transmission of a character.
However, information in the OLE Register may be
transferred prior to the information contained in the
Transmitter Holding Register if the Force OLE signal
condition is enabled (bits 5 and 6 of Control Register
1 set high). The Force OLE control bit (bit 5 of Control
Register 1) must be set prior to loading of a new character in the Transmitter Holding Register to ensure
forcing the OLE character prior to transmission of the
data character. The Transmitter Register output is
applied to a flip-flop which delays the output by one
clock period. When using the 1 X clock generated by the
MODEM or data set, the output data changes state on
the negative clock transition and the delay is one bit
period. When using a local 32X clock, the Transmitter
When the Transmitter section is enabled, a Transmitter
interrupt is generated each time the Transmitter Holding
Register is empty. If the Transmitter Holding Register
is empty when the Transmitter Register is ready for a
new character, the Transmitter section enters ·an idle
state. During this idle time, a high will be presented to
the Transmitted Data (TDATA) output in the Anynchronous mode or the contents of the SYN Register will
be presented in the Synchronous Transmit NonTransparent mode. 1n the Synchronous Transmit Transparent mode (enabled by a high-level bit 6 of Control
Register 1)' the idle state will be filled by a DLE-SYN
character transmission in that order. When entering the
Transmit Transparent mode, the DLE-SYN fill will not
occur until the first forced OLE.
If the Transmitter section is disabled by a reset of the
Request to Send control bit, any partially transmitted
character is completed before the Transmitter section of
the I NS1671 is disabled. As soon as the Clear to Send
(CTS) input goes high, the Transmitted Data output will
go high.
When the Transmit parity is enabled, the selected Odd
or Even parity bit is inserted into the last bit of the
character in place of the last bit of the Transmitter
Register. This limits transfer of character information
to a maximum of seven bits plus parity or eight bits
without parity. Parity cannot be enabled in the Synchronous Transmit Transparent mode.
'·B'
0-155
Physical Dimensions
2.020
1------(51.308).·----------------1
.
MAX
"
0.032
(0.813)-
1
0.590
RA~
(14.986)
~~~~~j
0.165
0.050
~
TI
Ceramic Dual-In-Line Package (0)
Order Number INS16710
Z.Olll
-----------(52.5781------------[
MAX
~
~
18
31
~
~
~
n
H
H
2J
~
~
M
n
u
ft
I
i
0550-0.005
(13.970'0.127)
PIN NO.1 INDENT
I
~~T.n~PT.~~T.rr.~~~~~~
lr=
r
=r 0.060
O.600~O.620-----1. ,,~
(15.240-15.7481 .
".025
-1
-
~(15.875+0.635)----1
0.625_0.015
•
0,030
!IIJ62)
-
,_
0.009-0. 015
(0.229-0.3811
0.050
~.,. . . . .
TYP
(3.302 ~O.I27!
L
1
.
0.1115'0.015
(1.905<0.3111)-1--
~(Hi40)
0.100
-I
~
.
0.018'0.003
---11--(0.45],0.076)
~
~
-----I~
0125(0.508)
(3:175) MIN
~
Plastic Oual·ln-Line Package (N)
Order Number INS1671N
Manufactured under one or more cf the following U.S. patents: 3083262, 3189758, 3231797, 3303356, 3317671. 3323071, 3381071, 3408542,3421025,3426423,3440498,3518750,3519897, 3557431, 3560765,
3556218,3571630,3575609.3579059,3593069,3597640,3607469,3617859,3631312,3633052,3£38131.3648071,3651565,3693248.
National Semiconductor Corporation
2900 Semiconductor Drive, Santa Clara, California 95051, (408) 737 5000/TWX (910) 339 9240
M
M
National Semiconductor GmbH
808 Fuerstenteldbruck, Industriestrasse 10, West Germany, Tele. (08141) 1371/Telex 05 27649
M
National Semiconductor (UK) Ltd.
Larkfield Industrial Estate, Greenock, Scotland. Tele. (0475) 33251/Telex 778 632
M
National does not assume any responsibility for use of any circuitry described; no circuit patenllicences are implied; and National reserves the right, at any time without notice. to change said circuitry.
0-156
I?A National
Preliminary
JULY 1978
~ Semiconductor
N
(J1
INS8250 Asynchronous Communications Element
o
»
~
General Description
The I NS8250 is a programmable Asynchronous Communications Element (ACE) chip contained in a standard
40-pin dual-in-line package. The chip, which is fabricated
using N-channel silicon gate technology, functions as a
•
serial data input/output interface in a microcomputer
system. The functional configuration of the I NS8250 is
programmed by the system software via a TRI-STATE®
8·bit bidirectional data bus.
The I NS8250 performs serial-to-parallel conversion on
data characters received from a peripheral device or a
MODEM, and parallel-to-serial conversion on data
characters received from the CPU. The CPU can read the
complete status of the I NS8250 at any time during the
functional operation_ Status information reported
includes the type and condition of the transfer operations
being performed by the I NS8250, as well as any error
conditions (parity, overrun, framing, or break interrupt).
In addition to providing control of asynchronous data
communications, the INS8250 includes a programmable
Baud Generator that is capable of dividing the timing
reference clock input by divisors of 1 to (2 16 - 1), and
producing a 16x clock for driving the internal transmitter
logic. Provisions are also included to use this 16x clock
to drive the receiver logic. Also included in the I NS8250
is a complete MODEM-control capability, and a processorinterrupt system that may be software tailored to the
user's requirements to minimize the computing time
required to handle the communications link.
Features
•
Z
en
Q)
Designed to be Easily Interlaced to Most Popular
Microprocessors.
Adds or Deletes Standard Asynchronous Communication Bits (Start, Stop, and Parity) to or from Serial
Data Stream
•
Full Double Buffering Eliminates Need for Precise
Synchronization
•
Independently Controlled Transmit, Receive, Line
Status, and Data Set Interrupts
•
Programmable Baud Rate Generator Allows Division
of Any Input Clock by 1 to (2 16 - 1) and Generates
the Internal 16x Clock
•
Independent Receiver Clock Input
•
MOOEM Control Functions (CTS, RTS, DSR, DTR,
R I, and Carrier Detect)
•
Fully Programmable Serial-Interface Characteristics
-
5-,6·, 7-, or 8-Bit Characters
Even, Odd, or No-Parity Bit Generation and Detection
1-, 1 %-. or 2-Stop Bit Generation
Baud Rate Generation (DC to 56k Baud)
•
False Start Bit Detection
•
Complete Status Reporting Capabil ities
• TRI-STATE TTL Drive Capabilities for Bidirectional
Data Bus and Control Bus
•
Line Break Generation and Oetection
•
I nternal Diagnostic Capabilities
Loopback Controls for Communications Link Fault
Isolation
Break, Parity, Overrun, Framing Error Simulation
•
Full Prioritized Interrupt System Controls
•
Single +5-Volt Power Supply
•
MICROBUSTM* Compatible
INS8250 MICROBUS Configuration
~
1-.;;.::;"-....,
~
I---'-"-"-.......~,
~ 1---'-"-....... ,
~
r.....;::..........~'
"0"
"1"
*Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
® TRt-STATE IS a trademark of National Semiconductor Corp.
0-151
::::J
(")
...
':1'
o
8
en
g
3
3
c
::::J
~.
cr.
o
~
m
CD
3
CD
a.
Absolute Maximum Ratings
Temperature Under Bias . . . . . . . . . . . . . . . . . . . . . . . . O°C to' + 70°C
Storage Temperature . . . . . . . . . . . . . . . . . . . . . . . . -65°C to +150°C
All Input or Output Voltages with Respect to VSS .... -0.5 V to +7.0 V
Power Dissipation . . . . . . . . . . . . . . . . . . . . . . . '. ,., . , . . . . 400.mW
Absolute maximum ratings indicate limits beyond which permanent
damage may occur. Continuous operation at these limits is not intended;
operation should be limited to those conditions specified under DC
Electrical Characteristics,
DC Electrical Characteristics
T A: O°c to + 70°C, VCC : +5, V ± 5%, VSS : 0 \J, unless otherwise specified.
Parameter
Symbol
V,lX
Clock Input Low Voltage
Min
V,HX
Clock Input High Voltage
V,l
Input low Voltage
-0.5
V,H
Input High Voltage
2.0
VOL
Output Low Voltage
VOH
Output High Voltage
Typ
-0.5
2.0
Max
Units
0.8
V
VCC
V
0.8
V
VCC
V
0.4
2.4
V
V
ICC (AV)
Avg Power Supply Current (Vec)
80
mA
',l
Input Leakage
±10
/lA
ICl
Clock leakage
±10
/lA
65
Test Conditions
}'Ol: 1.6mA on all
IOH : - lOO /lA,
out~uts,
Capacitance
TA: 25°C, VCC: VSS: OV
Symbol
Parameter
CXIN
Clock Input Capacitance
Min
Typ
Max
15
20
pF
Units
CXOUT
Clock Output Capacitance
20
30
pF
C,N
Input Capacitance
6
10
pF
COUT
Output Capacitance
10
20
pF
Test Conditions
fc: 1 MHz
Unmeasured pins returned to VSS
TYPICAL SUPPl Y CURRENT vs
TEMPERATURE. NORMALlZED(J)
1.5
....
....
'"
'"::>'"u
1.0
>
....
,
r---
...
~
::>
'"
0.5
0
I
----
+25
+50
AMBIENT TEMPERATURE (OC)
0-158
-
+75
AC Electrical Characteristics
T A ~ O°C to ± 70°C, VCC ~ +5 V ± 5%
tAW
Address Strobe Width
tAS
Address Setup Time
tAH
Address Hold Time
tcs
Chip Select Setup Time
Max
Units
ns
110
-
0
-
ns
110
-
ns
Min
Parameter
Symbol
90
ns
tCH
Chip Select Hold Time
0
-
ns
tess
Chip Select Output Delay from Strobe
0
90
ns
tDID
DISTR/DISTR Strobe Delay
0
-
tDIW
DISTR/DISTR Strobe Width
175
tRC
RC
Read Cycle Delay
1735
-
ns
ns
2000
-
ns
tDD
Read Cycle ~ tAW + tDID + tDIW + tRC
DISTR/DISTR to Driver Disable Delay
-
150
tDDD
Delay from DISTR/DISTR to Data
-
250
tHZ
DISTR/DISTR to FloatingData Delay
100
tDOD
DOSTR/DOSTR Strobe Delay
-@
100 pF loading
ns
-@
100 pF loading
ns
-@
100 pF loading
-
ns
-@
100 pF loading
50
-
ns
-@
100 pF loading
ns
tDOW
DOSTR/DOSTR Strobe Width
175
-
ns
twc
WC
Write Cycle Delay
1785
-
ns
2100
_.
ns
tDS
Write Cycle - tAW + tDOD + tDOW + twc
Data Setup Time
175
-
ns
tDH
Data Hold Time
60
-
ns
tCSC*
Chip Select Output Delay from Select
200
ns
tRA'
Address Hold Time from DISTR/DISTR
50
-
ns
tRCS*
Chip Select Hold Time from DISTR/DISTR
50
-
ns
tAR*
DISTR/DISTR Delay from Address
110
-
ns
tCSR'
DISTR/DISTR Delay from Chip Select
110
-
ns
tWA*
Address Hold Time from DOSTR/DOSTR
50
-
ns
tWCS'
Chip Select Hold Time from DOSTR/DOSTR
50
-
ns
tAW'
DOSTR/DOSTR Delay from Address
160
-
ns
tCSW'
tMRW
DOSTR/DOSTR Delay from Select
Master Reset Pulse Width
160
-
25
-
ns
[J.s
-
'Applicable only when ADS input is tied permanently low.
0·159
Test Conditions
AC Electrical Characteristics (cont'd.)
Parameter
Symbol
Min
Max
Units
Test
Conditions
BAUD GENERATOR
N
Baud Rate Divisor
tBLD
Baud Output Negative Edge Delay
tBHD Baud Output Positive Edge Delay
tLW
1
-
2 16 - 1
250 typ
ns
250 typ
ns
100 pF Load
425 typ
ns
100pF Load
330 typ
ns
100pF Load
100 pF Load
,
Baud Output Down Time
tHW Baud Output Up Time
RECEIVER
tSCD Delay from RCLK to Sample Time
tSINT Delay from Stop to Set Interrupt
tRINT Delay from DISTR/DISTR (RD RBR/RDLSR) to
Reset Interrupt
'
2 typ
/1S
2 typ
/1S
100 pF Load
1 typ
/1S
100 pF Load
1 typ
/1S
100 pF Load
, TRANSMITTER
tHR
Delay from DOSTR/DOSTR (WR THR) to Reset Interrupt
lIRS
Delay from InitiallNTR Reset to Transmit Start
16 typ
BAUDOUT
Cy'cles
tSI
Delay from Initial Write to Interrupt
24 typ
BAUDOUT
Cycles
tss
Delay from Stop to Next Start
1 typ
/1s
tSTI
Delay from Stop to Interrupt (THR E)
8 typ
BAUDOUT
Cycles
tlR
Delay from DISTR/DISTR (RD IIR) to Reset Interrupt
(THRE)
1 typ
/15
MODEM CONTROL
100.pF Load
"
tMDO Delay from DOSTR/DOSTR (WR MCR) to Output
1 typ
/1S
tSIM
Delay to Set Interrupt from MODEM Input
1 typ
/1S
100.pF Load
tRIM
Delay to Reset Interrupt from DISTR/DISTR (RD MSR)
1 typ
/1s
100pFLoad
0·160
• 100pF Load
--
INSB258
VCC
INSB258
XTALI
OPTIONAL
OSC. CLOCK TO
BAUD GEN LOGIC
OSC. CLOCK TO
r-_...._ _.....I\I"'..+_____..B.AUO GEN LOGIC
o.ca:=:=I-----""'"
o~i~~~ ....
XTALI
Timing
'XH
'XL
Min
140
140
Units
..
lIS
CRVSTAL
3.1MH,
A. External Clock Input (3.1 MHz Max ••
10-3DpF
4D-BOpF
B. Typical Crystal Oscillator Network
Timing Waveforms
-APPLICABLE ONLY WHEN OJ IS TIED lOW.
Reed Cycle
0·161
Timing Waveforms (confd.)
.
I--'AW-J
-----------?I~
r---,
L.I
"
AOS~
,
A2,A"AO
==><
f--IAS=±1tA"
VALID
I Xi'-'----'--------""':x·~
. '.I-Ies-,-I:+e"
HtwA'
,----:X=
j--twes·--j
CSi,es"eso ~ .
, Ltese' j+-Iess ==I
eSOUT
--1---1--,'- _____ 1____ _
I. I· :
we-----'---_,I
1-'000
-toow==-l-twe---~,.jl
------------....X
X
:
E
lesw"
,
'AW'
DOSTR/DOSTA
ACTIVE
I'------?,'-----+
E
I:
I
(
I-,os--/-,o"=1
D~~1~ ----------------«
~
DlSTR/DISTR
ACTIVE
.
VALID DATA
*APPlICABlE ONLY WHEN ADS IS TIED lOW.
Write Cycle
XTAL'
IIAU1!lfijf
1+2)
BAUD OUT
1+3)
I'
'I
IHW· IN - 2) XTAL1 CYCLES
'-------'r~
I -·c------+l,1
>
=
'LW 2 XTAL' CYCLES
BAUDOUT Timing
0-162
TIming Waveforms (cont'd.)
AeLK
--u---Lr
LJ
1
I8ClKS---------1-1
___________________________________
-1~~~D
lJ
SAMPLE eLK
SAMPLE
eLK
-----~~-Il'~I~--~~I--I~~
-I
INTERRUPT
IL
I-'SlNT
fir
(DATA RCVRfRR)
READY OR _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _-'
~
iiTffiifDISTR@)
(READREC _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
DA~~ ~u:{s~~
~~'A'NT
.
ACTlVE
Receiver Timing
Transmitter Timing
DOSTR/DOSTR G)
'WRMeA'
ouWoW!
iii
NOTES:
CD See Write Cycle Timing
@See Read Cycle Timing
--\
\ . .---:--------1r-'MDD~
\. .--------.1i--.MDD-I
1,----
\
\
MODEM Controls Timing
0-163
/
.
._______
INS8250 Block Diagram
D7- DO
AD
A,
A2
DIVISOR
LATCH (LS)
DIVISOR
LATCH (MSl
z
C/l
ex>
IV
,..,
L ___________
A5
rrlV
c: ~
S;
,'17
."
or
c
_
~5.
DATA 0
~
DATA 1
2:
~
..,
DATA 2
g:
DATA 3
"
VI
~
-!
DB6
~
DB7
~
.j
IloR
1>2 (TTL)
;.
g
RESET
DP8224
CLOCK
GENERATOR
&
DRIVER
I
IloW
21 _I
r------.......::.!...j
...
I
1.
:1
35 II
31
'":J
z
C/l
INS8250
(ACE)
RI
..1L+5V
RLSO
.1!
DAlA4
DSR
-.ll
5
CTS
DAlA
3
OUT 2'
_ 36
ex>
o
ex>
o
»
~
<1>
3
'"
DAlA6
:J
DATA 7
:J
"-
3
OISTR
1
DOSlA
i)'
(3
"3o
'0
c:
~
:'i
~
iti
3
:;;
;::>'
:T
'":T
,0'
:r
~
l>
"0
'2..
(;'
a
0'
il
Typical Applications (cont'd)
INS8250
(ACE)
I
I
+I
l+oliD.ATioiAOil'ilIUS"'~07· DO
MICROCO~~~~i: l+oliDIIIATjiAW'WjU,S
Figure 2. Typical Interface for a High-Capacity Data Bus
Physical Dimensions
inches (millimeters)
~----{5~:~::)------O.-52-0----------~·-'
MAX.
1
-~ UJ.ZD8)
saUARE
-----I
I
0.032
i
(Ojtj)
0.590
,AD
~
'II
(14.986)
MAX
I
L;"--",..,.,..,.."rr;rr;~:;:::;:;;:;:=r.~~"""".",..-r,;r-r.;r-r;;;r-",,..~l
+
..
.
~OB-0012 I'
1
1----------05.241--REF
---O.&DO
1D.2D3~O.30"
I
---,
I---{1.27I1'.O.254)
0.050 '0.010
0.100 'O.OtD
!
I
0.050
~-I[
TV'
0.018 '0.002
.
II
~)--I,-'-
/2.540'0254,--1:-
'jMAX 1::::=::::,
0.23
=r-~
-.'
. . -+-
0125
(3:175)
MIN
Ceramic Dual·ln-Line Package (D)
Order Number INS8250D
NS Package Number D40C
0.062
(1.575)
0.5500.005
03.910 0.127)'
'AD
PIN NO. I INDENT
~~~~rr.n~~~~~~~--j
0.030
0.060
(0.7621
0,050
~_j 'T' 'i' ~."'".
lr(1'~)481~~~~. ~IL
1--.
r
O•.•••
+0025
I
r--
I
0.625 0:015
(15.875 +O.635)-~---~
0.009-0. 015
1
(0.229-0,J81)·
0.0150,015'
(1.905 '0.381)--
I
.
---
I
---
I
r-
0.100
(2.540J
~
II
~
~
0.020
0.018 0.003
---- ---(0.457 ·0.0~6)
0125(0.508)
(3:175) MIN
~
Plastic Dual-In-Line Package (N)
Order Number INS8250N
NS Package Number D40A
Nlllon,l SemlconductlN"
Corpor,tlon
2900 Semiconductor Drive
Santa Clara. California 95051
Tel (408) 737-5000
TWX' (910) 339·9240
Natlon,l Semiconductor GmbH
8000 MUnchen 21
Eisenheimerstrasse 61/2
WeslGermany
Tel.' 089/915027
Telex: 05-22772
NS Int,rnatlonal Inc., Japan
/' Miyake Building
,.g Yolsuya.
Shinjuku·ku 160
Tokyo, Japan
. "Tel: (03)355-3711
TWX: 232·2015 NSCJ-J
National Semiconductor
(Hong Kong) Ltd.
8lhFloor,
Cheung Kong ElectroniC Bldg
4 Hing Yip Stree1
Kwun Tong
Kowloon, Hong Kong
Tel 3-411241·8
Telex' 73866 NSEHK HX
Cable. NATSEMI
NS Electronics 00 Brasil
Avda Btlgadeiro Faria Lima 84\t
11 Andar Conjunto 1104
.
Jardim Paulislano
Sao Paulo, Brasil
Telex
1121008 CABINE SAO PAULO
NS Electronics Pty. Lid.
Cnr Stud Rd. & Mtn Highway
8ayswater, Vicioria 3153
Australia
Tel,' 03-729-6333
Telex 32096
National does nol assume any responsibility lor use of any.circuitry described: no circuit patent licenses are implied, and National reserves the righi, at any time Without notice, 10 change said circuitry.
0-172
.
~ Semiconductor
~National
AUGUST 1978
Pub. No. 426305429-001 A
."
INS8251 Programmable Communication Interface
c8
Features
General Description
The INSB251 is a programmable Universal Synchronous/
Asynchronous Receiver/Transmitter (USART) chip
contained in a standard 2B-pin dual-in-line package_ The
chip, which is fabricated using N-channel silicon gate
technology, functions as a serial data input/output
interface in National Semiconductor's NBOBO microcomputer family. The functional configuration of the
INSB251 is programmed by the system software for
maximum flexibility, thereby allowing the system to
receive and transmit virtu .-'Iy any serial data communica. tion signal presently in use (including IBM Bisync).
• Synchronous and Asynchronous Full Duplex
Operations
• Synchronous Mode Capabilities
- Selectable 5- to B-Bit Characters
- Internal or External Character Synchronization
- Automatic Sync Insertion
• Asynchronous Mode Capabilities
- Selectable 5- to B-Bit Characters
- 3 Selectable Clock Rates (1 x, 16x or 64x the
Baud Rate)
- Line Break Detection and Generation
- 1-, 1%-, or 2-Stop Bit Detection and Generation
- False Start Bit Detection
The INSB251 can be programmed to receive and transmit
either synchrpnous or asynchronous serial data_ The
INSB251 performs serial-to-parallel conversion on data
characters received from an input/output device or a
MODEM, and parallel-to-serial conversion on data
char~cters received from the CPU. The CPU can read the
complete status of the INSB251 at any time during the
functional operation. Status information reported
includes the type and the condition of the transfer
operations being performed by the INSB251, as well as
any transmission error conditions (parity, overrun, or
framing).
•
Baud Rates
- DC to 56k Baud (Synchronous Mode)
- DC to 9.6k Baud (Asynchronous Mode)
Transmission Error Detection Capabilities
- Parity
- Overrun
- Framing
Double Buffering of Data
TTL Compatible
Single TTL Clock
Reduces System Component Count
MICROBUSTM* Compatible
•
•
•
•
•
•
INS8251 MICROBUS Configuration
INTRk
TxE
INTRi
RxRoy
INTR;
Tx Roy
07 - 00
ADDRESS
BUS
DATA
BUS
CPU
GROUP
CONTROL
,
M
I
C
R
0
B
U
S
SERIAL
DATA OUT
--" 07 - 00
Txo
I'
IIOR
RESET
Rxo
iiQ
oTR
IIOW
RTS
WR
Cs'
AD
Dsii
Cs'
CTS
CID
TxC
RxC
t
t
BAUD
RATE
GENERATOR
*Trademark, National Semiconductor Corp.
© 1978 National Semiconductor Corp.
0-173
I
SERIAL
DATA IN
INSBZ!1
RESET
TO RS -232
INTERFACE
EIA
DRIVERS
~
ii1
3
3Q)
C"
CD
~
3
3
c
::::s
~
s·
::::s
Absolute ,Maximum Ratings
Ambient Temperature Under Bias . . . . . . . . . . . . . . O°C to +70°C
Storage Temperature . . . . . . . . . . . . . . . . . . . . _65°C to +150°C
Voltage on Any Pin with Respect to Ground ...... -0.5 V to +7 V
Power Dissipation . . . . . . . . . . . . . . . . . : ........... 1 Watt
Note: Maximum ratings indicate limits beyond which permanent
damage may occur. Continuous operation at these limits is not
intended and should be limited to those conditions specified under
de electrical characteristics.
DC Electrical Characteristics
TA = o°c to +70°C; Vee = 5.0V ± 5%; GND = OV
Symbol
Min
Parameter
VIL
Input Low Voltage.
VIH
Input High Voltage
Typ
Max
-0.5
0.8
2.0
VOL
Output Low Voltage
VOH
Output High Voltage
IOL
Data Bus Leakage
IlL
I nput Leakage·
lee
Power Supply Current
Unit
Test Conditions
V
Vee
V
0.45
V
IOL = 1.6mA
V
IOH = -100/.LA
-50
10
J.tA
/.LA
VOUT= 0.45 V
VOUT= Vee
10
/.LA
VIN = Vee
45
80
mA
Typ
Max
Unit
2.4
Capacitance
T A = 25°C; Vee = GN D = 0 V
Symbol
Parameter
I
Min
Test Conditions
CIN
I nput Capacitance
10
pF
fe = 1 MHz
CliO
I/O Capacitance
20
pF
Unmeasured pins returned to GND.
Test Load Circuit
Typical
~
.~~.
~
+10
!
510n
0
0
l-
=>
I!:
=>
0
W
Clock Pulse Width
220
0.7 tCY
ns
tR, tF
Clock Rise and Fall Time
0
50
ns
tD,x
TxD Delay from Falling Edge of TxC
1
IlS
Gl=100pF
tSRx
Rx Data Set·Up Time to Sampling Pulse
2
IlS
Gl =100pF
tHRx
Rx Data Hold Time to Sampling Pulse
2
IlS
G l = 100pF
f Tx
Transmitter Input Glock Frequency
,. lx Baud Rate
16x and 64x Baud Rate
DG
DG
Transmitter Input Glock Pulse Width
lx Baud Rate
16x and 64x Baud Rate
12
1
Transmitter Input Glock Pulse Delay
lx Baud Rate
16x and 64x Baud Rate
15
3
Receiver Input Glock Frequency
1x Baud Rate
16x and 64x Baud Rate
DC
DG
Receiver I nput Clock Pulse Width
lx Baud Rate
16x and 64x Baud Rate
12
1
tCY
tCY
Receiver Input Clock Pulse Delay
lx Baud Rate
16x and 64x Baud Rate
15
3
tCY
tCY
tTPW
tTPD
fRx
tRPW
tRPD
56
520
kHz
kHz
tCY
tCY
,
56
520
tCY
tCY
kHz
kHz
tTx
TxRDY Defay from Center of Data Bit
16
tCY
tRx
RxRDY Delay from Center of Data Bit
20
tCY
tiS
Internal SYNDET Delay from Center of Data Bit
25
tCY
tes
Internal SYNDET Set-Up Time Before Falling Edge of RxC
16
tCY
tTxE
TxEMPTYDelay from Center of Data Bit
16
tCY
twc
Control Delay from Rising Edge of WRITE (TxE, DTR, RTS)
16
tCY
16
tCY
Control to READ Set·Up Time (DSR, CTS)
teR
NOTES:
1. AC timings measured at VOH = 2.0 V, VOL = 0.8 V. and with test load circuit of page 2.
C l = 50pF
C l =50pF
2. This recovery time is for initialization only. when MODE. SYNC1, SYNC2. COMMAND and first o'ATA BYTES are written into the USART.
Subsequent writing of both COMMAND and DATA are only allowed when TxRDY =. 1.
3. The 'fXC and Rxe frequencies have the following limitations with respect to eLK:
for 1x Baud Rate, fTx or fRx" 1/30 teyl
for 16x and 64x Baud Rate, fTx or fAX':;:;:; 1/4.5 tey)
4. Reset Pulse Width = 6 tCY minimum.
0-175
.-*,
Timing Waveforms
READ AND WRITE TIMING
J:=:
elK
--.£-
=1-;""__1:----"'\I..__-..J,r---""""""'-tCY
CW
t
::II
clii.cs
*WRITE AND READ PULSES
HAVE NO TIMING LIMITATION
WITH RESPECT TO eLK.
lAW
Tx£, OTA. RTS
EICR--:=:!
TRANSMITTER CLOCK
AND DATA
_
f.<.ellXBAUD)~::-;;:rC.=typo=~5:---'-'
- - = = - 1 6 TxC PERIODS
TxC (16 x BAUD)
-
_ -f-:
===~-==~---------------------===v---.-tDTX
TxO
_
"'-------
RECEIVER CLOCK
AND DATA
RiC (16 x BAUD)
INTERNAL
SAMPLING
PULSE
Tx ROY AND Rx ROY
TIMING (ASYNC MODE)
RxD - - - , START BIT
I
DATA 81TS
~;
I PARITY BIT ,- STOP BIT I
START BIT
c==
R:::: _____________________________________IR_X_-1--J~r-.-.-.----
WRITE ht BYTE WRITE 2nd BYTE
TxD M"A'R'i<'iN'G1 START BIT I
DATA BIT
I.
htDATABVTE
INTERNAL SYNC DETECT
RxO
(OUTPUT)
SYNDET _____________________________________
EXTERNAL SYNC DETECT
~
SYNDET
(INPUTI
---,l______r-----~I~~--r-----:--1------1~~
_ _ _1Ft'S
---------- -,\.
RxD _ _ _ _ _ _ _ _ _
0-176
ht OA'TA BYTE
INS8251 Block Diagram
INTERNAL
DATA BUS
TRANSMIT
BUFFER
RESET
ClK
TxD
(151
TRANSMIT
CDNTRDl
C/D
jjjj
TxRDV
TxE
Txf
Wii
Ci"':'~---'"
RECEIVE
BUFFER
PDWER
SUPPLY
RxD
{~<5V
~GND
RxRDY
NDTE: APPLICABLE PINDUT NUMBERS
ARE INCLUDED WITHIN
PARENTHESES.
RxC
SYNDET
INS8251 Functional Pin Definitions
The following- describes the function of all the INS8251
input/output pins. Some of these descriptions reference
internal circuits.
INPUT SIGNALS
Chip Select (CS): When low (logic 0), the chip is selected.
This enables communication between the INS8251 and
the I NS8080A microprocessor.
Read (RD): When low, allows the INS8080A to read
data or status information from the INS8251.
Write (WR): When low, allows the INS8080A to write
'
data or control words into the INS8251.
Control/Data (C/O): Used in conjunction with an active
RD or WR input (logic 01 to determine overall device
operation as indicated below.
cs C!D RD WR
0
'0
0
0
Operation
0
1
Data character read from INS8251
0
1
0
Data character written into INS8251
1
0
1
Status information read from INS8251
0
1
1
0
Control word written into INS8251
1
x
x
x
Device not selected
Reset: When high (logic 1), places the INS8251 in the
idle mode. The device remains in this mode until a new
set of control WOrds is written into the INS8251 to
program its functional definition. Minimum Reset pulse
width is 6 tey.
Clock (ClK): TTL ~Iock that is used to generate internal
timing signals for the INS8251. The minimum frequency
of the CLK input is 30 times the receiver/transmitter
clock frequency for the synchronous mode, and 4.5
times ~he receiver/transmitter clock frequency for the
asynchronous mode. The ClK input is normally connected to the' ¢2 (TTL) output of the INS8224 Clock
Generator and Drive'r device.
Transmitter Clock (TxC): This clock input controls the
rate at which a data character is to be transmitted. The
frequency. of the 'fXC input is equal to the Baud Rate
for the synchronous mode, and is a multiple (1 x, 16x or
64x) of. the Baud Rate for the asynchronous mode. A
portion of. the Mode Instruction Word (see t'igure) selects
the value of the Baud Rate Factor when iii the asynch·
ronous mode. Transmitter Data are clocked out of the
INS8251, on the falling edge of the 'fXC input.
Data Set Ready (i5SR): General-purpose input whose
condition can be tested by the INS8080A using a status
read operation. However, a low-level i5SR input is
normally used to test data set ready conditions.
0·177
Ii!II
Clear to Send (CTS): If low when the TxEN bit (DO) of
the Command Instruction Control Word (see figure) is
set high, E\nabljls the INS8251, to transmit serial data,
mitter buffer is empty, and' the ,sync char~cter(s!, of .a'
data block are soon to be transmitted automatically as
fillers.
,Receiver Data (RxD): Serial data input from a ,MODEM
or an input/output device.
Receiver Ready (RxRDY): When high, alerts the
INS8080A that the receiver contains a data' character
that is, ready to be inp\Jtto the CPU. The RxROY
output, wh ich is automatically r,eset whenever a char-,
acter is read from the INS8251, can be used as an
interrupt to' the system. For polled operation, the
condition of the RxRDY signal can be tested by the
I NS8080A using a status read operation.
Receiver Clock (RxC): This clock inpOt controls the rate
at which a data,character is to be received. The frequency
and selection of the RxC input is as described above for
the TXC input. Receiver data are clocked into the
INS8,251 on the rising edge of the RxC input.
Vee: +5·volt supply.
'INPUT/OUTPUT SIGNALS
Ground: O·volt reference;
Data (07 - DO)' Bus: This bus cOmprises eight TR I-STATE
input/output lines. The ,bus provides bidirectional
communications between the INS8251 and the
INS8080A. Data are routed to or from the internal data
bus buffer ,upon execution of an INS8080A OUT or
IN instruction, respectively. In addition, control words,
command words and status information are transferred
through the data bus buffer.
OUTPUT SIGNALS
Data Terminal Ready (DTR): General.pu;pose output
which can be set to an active low by programming the
OTR bit (0,) of the Command Instruction Control
Word. However, a low-level OTR output is normally
used for data termimil ready or rate select control.
Requestto Send (RTS): Gen~rSlI-purpose output whicH'
can be set to an active low by programming the RTS bit
(0 5) of the Command Instruction Control Word.
However, the RTS output is normally used for request
to send control in the transmit mode.
Transmitter Data (TxD): Composite serial data output
to, a MODEM or input/output device. The TxO output
is held in the marking state (logic 1) upon a Reset',
operation.
Sync Detect (SYNDET): This pin may be used in the
synchronous mode only: System software can program
SYNOET as either an input or an output. When used as
an output (internal sync detect mode), a high-level
SYNOET indicates that the INS8251 has detected sync
character(s) in the received ser!.al data. The SYNOET
output is automatically ~eset upon a status read opera-tion by the INS8080A. When used as an input (external
sync detect mode), a high-leVel SYNOET causes the
INS8251to start assembling data characters on the
falling edge of the next Rxe'input.
Transmitter Ready (TxRDY): When high, alerts the
INS8080A that the transmitter is ready to accept a data
character. The TxROY output, which is automatically
reset whenever a character is written into the INS8251,
can be used as an interrupt to 'the system. For polled
operation, the condition of the TxROY signal can be
tested by the INS8080A using a status read operation.
,Transmitter Empty (TxE): Goes high to indicate the end
of a, transmit mode. The TxE output is automatically
reset whenever a character is writtenJnto the INS8251.
In the synchronous mode, a high-level TxE output
indicates that a character has not been loaded, the trans-
INS8251 Programming
The system software uses a Mode Il'\struction Control
Word and a Command Instruction Control Word (see
figures) to establish 'the complete'fun'ctional defi'nition
of the lI'i1S8251. These control words must immediately
follow an internal or external reset operation. Once the
Mode Instruction Control Word has been 'written into
the INS8251 by the CPU, sync characters (when applicable) or Command Instruction Control Words may be
inserted as shown in the typical data block transfer
diagram.
Pin Configuration,
02
'03
28
DO
26
vee
Rxe
GNO
26
04
24
OTR
, Os'
",06
23
RTS
22
iiiii
INS8251
21
RESET
Txe
20
eLK
Viii
CS
19
TxO
1,8
TxEMPTY
e/ii
17
m
iiii
f6
SYNOET
IS,
TxROY
07
, .!,'.:
01
27
RxROY
14
0-178
05
06
07
04
EVEN
PARITY
PARITY
ENABLE,
GENERATIONI 1 = ENABLE
CHECK,
= DISABLE
1 = EVEN
0= 000
NO. OF STOP BITS,
DO = INVALID
01 = 1 BIT
10 = 1~ BITS
11 = 28ITS
02
03
I \
I
CHARACTER
LENGTH,
DO = 5 BITS
01 = & BITS
10= 7 BITS
11 = 88ITS
o
DO
01
I
BAUD RATE
FACTOR,
DO SYNC MODE
01
XI
10
Xl&
11
X&4
ASYNCHRONOUS MODE
07
SINGLE
CHARACTER
SYNC,
1 = SINGLE
SYNC
CHARACTER
o = DOUBLE
SYNC
CHARACTER
0&
05
04
03
EXTERNAL
EVEN
PARITY
SYNC
PARITY
ENABLE,
DETECT,
GENERATIONI
1
=
ENABLE
CHECK,
1 = SYNOET
o = DISABLE
ISAN
1 = EVEN
INPUT
0= ODD
o = SYNOET
ISAN
OUTPUT
02
00
01
I \
CHARACTER
LENGTH,
DO = 5 BITS
01 = & BITS
10=7BIT5
11 = BBITS
I
SYNC MODE, 00
SYNCHRONOUS MODE
mode instruction control word format
07
05
04
OJ
02
01
00
REIlUEST
TO SEND
(RTS),
ERROR
RESET
(ER),
1 = RESETS
PE, DE
& FE
ERROR
flAGS
SEND
BREAK
CHARACTER
(SBRK),
1 = FORCES
T.O OUTPUT
lOW
0= NORMAL
OPERATION
RECEIVE
ENABLE
(RxE),
1 = ENABLE
o = DISABLE
DATA
TERMINAL
READY
{DTR},
1 = FORCES
1ffli0UTPUT
lOW
TRANSMIT
ENABLE
(TxEN),
1 = ENABLE
o = DISABLE
0&
INTERNAL
ENTER
HUNT
RESET
(iR),
MODE
(EH),
1 = RETURNS
1 = ENABLES
8251 TO
MODE
SEARCH
FOR SYNC
INSTRUCTION
CHARACTERS WORD FORMAT
M
FORCES
T OUTPUT
lOW
/
command instruction control word format
MODE INSTRUCTION WORD
SYNC CHARACTER 1
SYNC CHARACTER 2
SYNCHRON. DUS MODE
} ONL Y (SEE NOTEI
COMMAND INSTRUCTION WORD
C/D = "0"
C/D
= "1"
CID
=
CID
= "1"
"0"
DATA
CHARACTER(S}
COMMAND INSTRUCTION WORD
DATA
CHARACTER(S}
COMMAND INSTRUCTION WORD
typical data block transfer
0·179
NOTE,
WHEN THE MODE INSTRUCTION
WORD HAS PROGRAMMED THE
INS8251 TO SINGLE SYNC
CHARACTER (BIT 07 = "1't
SYNC CHARACTER 21S
OMITTED. BOTH SYNC
CHARACTERS ARE OMITTED
IN THE ASYNCHRONOUS MODE.
lilGl
INS8251 $tatus
The INS8251 has provisions for allowing the programmer to read the status of the device at any time during the'
functional operation. When the ,C/O input is a high-level, a normal read operation i's executed to read 'this status
information. The figure below shows the bits in the Status Read Word format. Since some of the status word bits
have identical meaning. to external output' pins, the INS8251 can be used in a completely polled environment or in an
interrupt driven environment.
.
: 'D6
D7
DSR
(SEE NDTE)
D5
J
SYNDET
(SEE NOTE)
I
D4
D2
Dl
T.E
(SEE NDTE)
R.RDY
(SEE NDTE)
D3
' FRAMING
PARITY'
OVERRUN
ERRDR
ERRDR
ERRDR
(PE):
(OE):
(FE):
1 • PARITY,
1 • CPU
1 • VALID
ERROR
DOES NOT
STDP BIT
READ A
DETECTED
DETECTED
CHARACTER
ATEND
o • WHEN
OF EVERY
BEFDRE
ER BIT OF
NEXT DNE
CHARACTER
COMMAND
BECOMES
o • WHEN AVAILABLE
INSTRUCTION
,WORD IS
ER BIT
o • WHEN
(04) OF
AT'
ER BIT,OF
COMMAND
INSTRUCTION COMMAND
INSTRUCTION
WORD IS
WORO IS
AT'
AT'
I
DO'
T.RDY
(SEE NOTE)
NOTE:
BITS 00·02,08 II D7
HAVE IDENTICAL
MEANINGS'TO EXTERNAL
OUTPUT PINS:
I
FE, OE II PE FLAGS 00
NOT INHIBIT THE OPERATION
OF THE INSB251
status read word format
Physical Dimensions
-------',
..:-----
r:~~:[J~]~
28·Load Cavity DIPID)
Order Number INS8251D
N.S. Package Numb~ D28A
',,'
••11....' Semiconductor
Corporal!oll
2900 Semiconductor Dnve
Santa Clara, Callforma 95051
Tel. (408) 737-5000
TWX. (910) 339·9240
,
1.IIDlial S,miCOnd_clDr GMbH
8000 Mllnchen21
6112Elsenhelmerstrasse
WeslGermany
Tel:089/915027
Telell.: 05·22772
28-Lead Molded DIP IN)
Order Number INS8261 N
, N.S, Package Number N28A
ISllileraalionallnc .• Japan
Miyake BuddlnQ
1-9 Yotsuya. Shm/uku-ku 160
TokYD.Japan
Tel: (03)355·3711
TWX 232·2015 NSCJ-J
NS EIIClrenicl (Ho... long) Lt••
81hFloor.
Cheung Kong ElectronIc Bldg.
4 Hmg YIp Street
KwunTong
NS ElaClnlniCl 0, B,.III
Avda Bngadeiro Faria lIma 844
11 Andar ConjunlO 1.1·04' '•..
Jardim PaulistamS
Sao Paulo. Brasil
Cnr. Stud Rd. & utn. Highway
Bayswater, VtclDria 3153 ..
Australia
Kowloon. Hong Kong
Tel.~
Tel..... 32098
1121008 CABINE SAO PAULO
NSElectntllicl",.LN.
T.I:03·729·6333
Tel' 3-411241-8
Telex. 73866 NSEHK HX
Cable: NATSEMI
National does not ~ssume any responsibility tor use 01 any circuitry described; no circuit patenllic.ns.s
ar~ imp,ied: and National reserves the right. at any tim. without notice. to chang. Slid CirCUitry.
~180
'
The Data
Bookshelf:
Tools for
the Design
Engineer
National Semiconductor's Data
Bookshelf is a compendium of
information about a product line
unmatched in its breadth in the
industry. The independent
volumes that comprise the
Bookshelf - over 5,000 pages describe in excess of 6,000 solidstate devices; devices that span
the entire spectrum of
semiconductor' processes, and
that range from the simplest of
discrete transistors to
microprocessors - those most
sophisticated marvels of modern
integrated circuit technology.
Active and passive devices and
circuits; hybrid and monolithic
structures; discrete and integrated
components ... complete
electrical and mechanical
specifications; charts, graphs, and
tables, test circuits and
waveforms; design and
application Information ...
Whatever you need you'll find it in
the designer's ultimate reference
source - National
Semiconductor's Data Bookshelf.
Ordering
Information
All orders must be prepaid.
Domestic orders must be
accompanied by a chetk or a
money order made payable to
National Semiconductor Corp.;
orders destined for shipment'
outside of the U.S. must be
accompanied by U.S. funds.
Orders will be shipped by
postage-paid Third Class mail.
Please allow approximately six to
eight weeks for domestic delivery,
longer for delivery outside the U.S.
~National
~ Semiconductor
"'~
National's
Data Bookshelf
Order Form
Please send me the volumes of the National Semiconductor, DATA
BOOKSHELF that I have se,lected below. I have enclosed a check or money
order for the total amount' of, the order, made' payable to' National
Semiconductor Corp.
Name _ _ _ _ _ _ _---'-'--___ Purchase Order # _ _ _---'_ _
Street Address _ _ _ _ _ _ _ _ _ _ _ _ _,--_ _ _ _ _ _,
City_ _ _ _ _--State/COuntry
,Zip~.-,-_ _
cppies@$4.00;CMOSDatabook,1978 ....... ,.: .... ,.TQtai'$_"_
copies@'$4.00,DataAcquisitionHandbook,1978 .... ,.. Total $_"_
copies @ $4.00, Interface Databook, 1978 ....... ,: .. : .. Tot'~1 $ _ _
copies@$4.00,LinearApplicationsHandbook ..:., .... Total $_,'_'
coples@$4.00"LinearOatabook,1978 ....... ~. ~ ... '.. Total $_,__
, copies@$4.00,-MemoryDatabook,1978 ............. Total $ _:_,_
copi~s @$4.00,MemoryApplicationS,1978 .. '.; ...... ,Total$_"__'
copies @ $3.00, Microprocessor Applications in
Business, Science and Industry,
1977 ................... '" ... '..•.. ,Total $_,_
copies @ $4.00, SC/MP Microprocessor Applications, ,
1977 ................ '............' .. Total $ _ _
copies @ $3.00, Pressure Transducer Handbook,
1977 .................. : ............ Total $_'_
copies@$4.00,SpeciaIFunctionDatabook,'1919 ...... Total $_,_,_
copies@$4.00,Dis,creteDatabook,2178 .............. Total '$ __, _
Subtotal ,$---':'"
(California residents add 6% Sales Tax·.) $ _ _
Grand rotal $ _
Send a facsimile of the above form to:
National Semiconductor Corp.
P.O. Box 60876, Sunnyvale, CA 94088
Postage will be paid by National Semiconductor Corp. Please allow four to
six, weeks for delivery.
'(San Francisco Bay Area residents add 6% % Sales Tax.)
~National
Edge Index
~ Semiconductor
Table of Contents
Introduction
The MICROBUS
The Series 8000 Microprocessor Family CPU Group
Designing Series 8000
Micropro~essor
Family Systems
Memory Components
MAXI·ROMS
Input/Output Components
Peripheral Control Components
Communications Components
Development Support
Programming
MjCROBUS Electrical Specifications
Series 8000 Microprocessor Family Design Example
Additional Information Sources
Data Sheets
••11
CPU Group
• • •..J
Digital.1I0 Components
'.ICJ
Peripheral Control Components
•.•'
Communications Components
APPENDICES
DATA
SHEETS
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-21:37:19 Create Date : 2016:08:11 19:27:52-08:00 Modify Date : 2016:08:11 21:30:16-07:00 Metadata Date : 2016:08:11 21:30:16-07:00 Producer : Adobe Acrobat 9.0 Paper Capture Plug-in Format : application/pdf Document ID : uuid:c52b86a3-84ea-d24b-bb09-20a9ba6c358d Instance ID : uuid:e3492258-1845-6b40-8139-cb9e010e34b0 Page Layout : SinglePage Page Mode : UseNone Page Count : 400EXIF Metadata provided by EXIF.tools