`
`by
`
`Kuo-Sheng Hsiao
`
`A Thesis Submitted to the Faculty of the
`
`DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING
`
`the Requirements
`In Partial Fulfillment of
`for the Degree of
`
`MASTER OF SCIENCE
`
`In the Graduate College
`
`THE UNIVERSITY OF ARIZONA
`
`1 9 8 4
`
`Copyright 1984 Kuo—Sheng Hsiao
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page1
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 1
`
`
`
`STATEMENT BY AUTHOR
`
`submitted in partial
`been
`has
`This thesis
`fulfillment of requirements for an advanced degree at
`The University of Arizona
`and is
`deposited
`in
`the
`University Library to be made available to borrowers
`under
`the rules of the Library.
`
`this
`from
`Brief quotaticns
`allowable without special pernission,
`that
`provided
`accurate acknowlegement of source is made.
`Request
`for
`permission
`for
`extended
`quotation
`from
`or
`reproduction of
`this manuscript
`in whole or in part
`may be granted by the copyright holder.
`
`thesis
`
`re
`
`SIGNED:
`
`26m 24%; files
`
`‘-
`
`APPROVAL BY THESIS DIRECTOR
`
`This thesis has been approved on the date shown below:
`
`
`RALPH MARTINEZ
`Associate Professo
`of
`
`
`Electrical and Computer Engineering
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page2
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 2
`
`
`
`© 1984
`
`KUO—SHENG HSIAO
`
`All Rights Reserved
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 3
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 3
`
`
`
`ACKNOWLEGEMFNTS
`
`The author wishes to express his appreciation to
`
`his advisor and committee chairman, Dr. Ralph Martinez,
`
`for his guidance and professional assistance throughout
`
`this
`
`thesis.
`
`The
`
`author would
`
`also
`
`like to
`
`thank
`
`the
`
`other
`
`comnittee members, Dr. Fredrick J. Hill and
`
`Dr. Robert Swanson, for their suggestions.
`
`Special
`
`thanKs are
`
`due to Mr. Hugh Bynum and
`
`Mr. Rajiv Dhingra
`
`of
`
`the Intel Corporation
`
`for
`
`their
`
`assistance in developing network software.
`
`The author would like to thank his father,
`
`his
`
`wife and children, for their support and encouragement.
`
`This work is dedicated to them.
`
`iii
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page4
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 4
`
`
`
`TABLE OF CONTENTS
`
`LIST OF ILLUSTRATIONS...
`I
`cot-OOOIoI-coocov-oo-
`
`ABSTRACT......
`
`1
`
`INTRODUCTION....... ....CIII.DOUG-...OOICOIICO'Oo'Il
`
`1.1
`
`scoooontoolcols
`Approach.......................
`0.7
`1.1.1 Ethernet.............................
`on?
`1.1.2 PEP-11 and LSI-11 Nodes..............
`.....OOIIOOOUIIB
`1.1.5 iAPXBfi Family.......
`
`LOCAL AREA NETWORK SYSTEM STRUCTURE..............12
`
`.............11
`2.1 Logical Structure.........
`2.1.1 Ethernet..............................14
`2.1.2 NIlfllz. NIZZlE, and iSBCSfiZ...........15
`2.1.5 REMOTE BOOTSTRAP and FOOT LOADER......17
`Software Residency..........................18
`2.2.1 NIlZlB, N12510 and LSI-11, PDP-ll
`Family................................18
`2.2.2 153C552 and ISBCB6/50......
`..26
`
`2.2
`
`FUNCTIONAL DESCRIPTION.........
`
`.....22
`
`3.1
`3.2
`
`...IIIIGOIICIIIOOCZE
`Overall Block Diagran.....
`...-Dul00024
`Programming Interface.............
`5.2.1 Nllwlw and N12616.....................24
`5.2.2 1580550...............................27
`5.5 Functional Operation........................51
`5.5.1 N1121z and N12213.....................52
`5.5.2 iSBC550...............................55
`5.5.5 REMOTE BOOTSTRAP and BOOT LOADER
`Routines............
`
`c.0055
`....38
`5.5.4 Connectivity................
`OIIOIIIOC|l0004g
`5.5.5 Flow Control.......
`coo-4'.”
`5.5.5 Error Control....
`
`EXAVPLE APPLICATION PROGRAMS . .
`
`. . . . . . .............42
`
`4.1
`4.2
`4.5
`
`REMOTE PROCESS Examples.....................42
`ExamPIESoooooo l O
`C
`I
`l
`O
`I
`I l U....CI.'.I'43
`PL/M-BB Examples . .
`.
`.
`. ... . . . . . .
`. .... . . . . .....45
`
`iv
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page5
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 5
`
`
`
`5
`
`CONCLUSION;IUIICOC I O I O O 0 I O Dc.DUI-OOOUIOCOOOOIOOIIO47
`
`Page
`
`. . . ..47
`. .
`. .
`. .
`. .
`.
`5.1 Advantages and Disadvantages . . .
`5.1.1 Simplicity. Cost, and Expandibility....47
`5.1.2 Media Access Protocols........ . .
`. .
`. . . ..48
`
`5.2 Potential Application Areas..................49
`5.2.1 Automatic Test Equipment....... .
`.
`. . . . ..49
`5.2.2 Laboratory AutOmation . . . . ... . . . . .......5O
`5.2.5 Factory Automation .
`. . . . . . ... . .
`. . . . . . . ..5@
`
`APPENDIX A: Nllzlfi AND NIZCIE COMMAND FUNCTION CODE....52
`
`APPENDIX B: NIICIO AND NIZDlB COMMAND STATUS CODE .
`
`. . . ..54
`
`APPENDIX C:
`
`COMMAND REQUEST BLOCKS FOR iSEC55D
`I O O I I I O
`O O I
`I O I U O I .....IIOIOODOUO..55
`
`APPENDIX D:
`
`BOOT LOADER LOGICAL DIAGRAM.. . . . . . . . . .
`
`. . . ..55
`
`APPENDIX E:
`
`REMOTE BOOTSTRAP LOGICAL DIAGRAM...........BO
`
`APPENDIX F:
`
`REMOTE BOOTSIRAP PSEUDO CODE...............61
`
`APPENDIX C:
`
`BOOT LOADER PSEUDO CODE . . . . . . . . . . ..........65
`
`APPENDIX E:
`
`EXAMPLE MAP FILE (PDI-ll/44) .
`
`. . .
`
`. .
`
`. .
`
`.
`
`.
`
`. . . ..66
`
`APPENDIX 1:
`
`EXAMPLE REMOTE PROCESS (FORTRAN)... . . . . . . ..67
`
`APPENDIX J:
`
`EXAMPLE REMOTE PROCESS (PL/M—BS).... . .
`
`.
`
`. . ..68
`
`APPENDIX K:
`
`EXAMPLE BOOT IOADER (MACRO-11) . . . .
`
`. . .......69
`
`APPENDIX L:
`
`EXAMPLE REMOTE BOOTSTRAP (MACRO—11)........74
`
`APPENDIX M:
`
`EXAMPLE MIP USED FOR THIS PROJECT . . . . . . . . ..78
`
`APPENDIX N:
`
`CONTROLLER$INIT EXAMPLE PROGRAM.. . . .
`
`. .
`
`.
`
`.
`
`. ..87
`
`APPENDIX 0:
`
`PL/M-BS EXAMPLE BOOT LOADER PROGRAM
`
`0.1
`BOOT LOADER Definitions File......... . . .
`. . . ..91
`0.2 Library Routines for BOOT LOADER...... . . . .
`. ..95
`0.3
`BOOT LOADER Example Program..................9?
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 6
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 6
`
`
`
`vi
`
`APPENDIX P:
`
`PL/M-86 EXAWPLE BOOTSTRAP PROGRAM
`
`P.1
`
`REMOTE BOOTSTRAP Definitions File...........1e@
`
`. ..104
`P.2 Library Routines for REMOTE BOOTSTRAP. . . .
`P.5
`REMOTE BOOTSTRAP Example Program...... . . . . ..1@7
`
`loo-OOIOOOOCIOCOIIUCI
`
`oooolIOOOClIoolga
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 7
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 7
`
`
`
`LIST OF ILLUSTRATIONS
`
`Figure
`
`Page
`
`1.1
`
`Outline of SMART NODE . . . .
`
`. . ... . . . . ..........5
`
`1.2
`
`1.3
`
`1.4
`
`Outline of REMOTE NODE .
`
`. .
`
`. . . .
`
`.
`
`.
`
`. .
`
`.
`
`. . . . ......3
`
`LAN Topologies................ . . . . ........ .6
`
`Typical LAN Configuration.. . . . . . . .
`
`. .........6
`
`Ethernet LAN in CERL . .
`
`.
`
`.
`
`. . .
`
`.
`
`. . .
`
`. . .
`
`. ... .
`
`. . . ..9
`
`OSI Reference Model . . . . .
`
`.
`
`. . . . . .... . . . . .....12
`
`Frame Encapsulation . . . . . ...... . . . . . ........12
`
`LAN Protocol Resources . .
`
`.
`
`. . . .
`
`.
`
`. . .
`
`. .........13
`
`Ethernet Architecture Layering . . . . .........13
`
`Typical Message Frame Format on
`Ethernet LAN. .
`. . . . . .
`. .
`. .
`. . ..............16
`
`Implementation of NIlOlO and NIEBlC.. . . . . ..16
`
`Implementation of
`
`iSPCbSO . .
`
`. .
`
`. . .
`
`.
`
`.
`
`. .
`
`. . .
`
`. . ..16
`
`PDP-ll and LSl-ll BOOTSTRAP Fesidency......19
`
`BOOTSTRAP Residency (iSECSfi/SO) . . .
`
`. . .......21
`
`BOOT LOADER hesidency (MDS) .
`
`.
`
`. . . . .
`
`. . . . .
`
`. . ..21
`
`BOOTSTRAP Overall Logical Diagram..........23
`
`Command and Status Register . .
`
`. .
`
`. . .
`
`. ........26
`
`Transmit Frame Format
`
`(NIlOlO and NI2616)..28
`
`Receive Frame Format
`
`(NIlBlZ and NIZZIQ)...28
`
`General Format of Command Request B10ck....30
`
`Major Components of BOOT IOALER and
`REMOTE BOOTSTRAP . . . .
`. ..................
`
`vii
`
`3.3
`
`3.4
`
`3.5
`
`3.6
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Pages
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 8
`
`
`
`ABSTRACT
`
`Downloading the executable module is normally done
`
`with a loosely coupled distributed computer system.
`
`This
`
`thesis
`
`investigates
`
`the
`
`technique
`
`to
`
`download
`
`an
`
`executable module from a smart node over an
`
`LAN physical
`
`channel
`
`to a
`
`remote
`
`node and to
`
`execute the
`
`executable
`
`module on the remote node.
`
`Two approaches
`
`have
`
`been
`
`successfully achieved
`
`within this thesis.
`
`One
`
`is
`
`to
`
`develop
`
`the executable
`
`module on the PDP-ll/44 computer
`
`and
`
`then
`
`download
`
`the
`
`module through the Ethernet
`
`LAN to the LSI-11/23 computer
`
`and to
`
`execute
`
`the module
`
`on
`
`the LSI-11/23 computer.
`
`Another one is to download the executable module from the
`
`Intel Series IV Microcomputer Development
`
`System through
`
`the Ethernet LAN to the iSBCB6/BZ
`
`single
`
`board computer
`
`and to execute the module on the single board computer.
`
`Potential
`
`applicaiton areas
`
`of
`
`this
`
`technique
`
`are like Automatic Test Equipment, Laboratory Automation,
`
`and Factory Automation.
`
`viii
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00753
`
`Page9
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 9
`
`
`
`CHAPTER
`
`1
`
`INTRODUCTION
`
`The development of electronic
`
`computers and the
`
`experience gained with
`
`their
`
`applications in economic,
`
`scientific, industrial, and technical areas have revealed
`
`that it is both necessary and efficient to employ remote
`
`data access (over data transmission channels) and remote
`
`output of the results.
`
`The experience upon geographically
`
`widely distributed computer systems shows the necessity of
`
`switching from centralized computer
`
`systems to networks
`
`that make all programs, data and ether resources available
`
`to any node on the network regardless geographic location
`
`of the resources and the users.
`
`Over
`
`the
`
`last
`
`decade,
`
`there
`
`has
`
`been
`
`vigorous
`
`development on
`
`computer
`
`networks
`
`for data
`
`bases
`
`and
`
`information retrieval services.
`
`In any computer network
`
`there exists a collection of machines intended for running
`
`user
`
`programs.
`
`Normally,
`
`a
`
`computer
`
`on
`
`the
`
`network
`
`contains a resident bootstrap which will
`
`load a permanent
`
`program from mass storage devices onto its memory.
`
`The
`
`permanent
`
`'program may
`
`have
`
`the form of a monitor,
`
`an
`
`interpreter or
`
`an operating system through which
`
`local
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00753
`
`Page10
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 10
`
`
`
`user programs can be processed.
`
`Let
`
`us
`
`define
`
`such a
`
`computer, which has a
`
`terminal,
`
`I/O devices, mass storage
`
`devices and/or intelligence with it. on the network as a
`
`"SMART NODE"
`
`(See Figure 1.1), for example, vnx,
`
`IBM/PC,
`
`IBM/4341,
`
`INTEL 86/330,
`
`INTEL so/sso, etc.
`
`A station, which has data acquisition and
`
`data
`
`display equipment, on the network may have no mass storage
`
`device with it so that human resources can not develop
`
`executable program on it.
`
`Let us also define
`
`such
`
`a
`
`station on the network as "REMOTE NODE", for example,
`
`iSBCBB/SO,
`
`iSECEB6/19, Micro VAX, etc.
`
`This paper
`
`investigates the technique to download
`
`a
`
`task (or process) from a
`
`SMART
`
`MODE to
`
`a particular
`
`REMOTE NODE, which has the same type of CPU as the SMART
`
`NODE
`
`host
`
`CPU, Tanenbum (1982),
`
`and
`
`to
`
`process
`
`the
`
`downloaded task (or process) at
`
`the REMOTE NOD? by using
`
`the network bootstrap.
`
`Here we define such
`
`a
`
`task
`
`or
`
`process
`
`to
`
`be
`
`downloaded and processed at
`
`the
`
`REMOTE
`
`MODE as
`
`REMOTE
`
`PROCESS"
`
`(See Figure 1.2).
`
`The task running on the REMOTE NODE for receiving
`
`and executing the
`
`REMOTE
`
`PROCESS is defined as
`
`"REMOTE
`
`BOOTSTRAP".
`
`The task that
`
`runs on
`
`the
`
`SMART
`
`NODE
`
`for
`
`downloading REMOTE pnocnss is denoted by "BOOT LOALER".
`
`The later part of this Chapter willintroduce
`
`existing commercially available LANs (local Area Networks)
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00753
`
`Page11
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 11
`
`
`
`- Oneratin
`
`S stem
`
`
`
`
`I User Program
`
`
`
`T
`
`Execution
`Network Interface
`
`Figure 1.1 Outline of SMART NODE
`
`1/0 Page
`
`Data
`Display
`Equipment
`
`
`
`
`
`
`
`
`MEMORY
`
`Data
`Acquisition
`Equipment
`
`User Program
`
`Network
`Interface
`
`Figure 1.2 Outline of REMOTE NODE
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 12
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 12
`
`
`
`and explain why we select
`
`the Ethernet LAN for our study
`
`approach.
`
`a
`
`Chapter 5 describes the modular layering concept
`
`of computer networks protocols by referencing the 081
`
`(Open
`
`System Interconnection) Reference Model
`
`and
`
`describes
`
`the
`
`implementations
`
`of
`
`vendor
`
`supplied
`
`hardware/software
`
`network
`
`interfaces,
`
`the
`
`roles
`
`and
`
`residency of
`
`the BOOT LOADER and the REMOTE BOOTSTRAP in
`
`the overall network architecture.
`
`Chapter 3 describes the overall
`
`logic diagram of
`
`both SMART NOEE and REMOTE NODE,
`
`the detailed functional
`
`operations of each vendor supplied hardware/software
`
`network interface,
`
`the programming interface of each
`
`vendor supplied network interface. Also described in
`
`Chapter 3 are the
`
`procedural
`
`descriptions
`
`and
`
`logical
`
`interconnection of BOOT LOADER and REMOTE FOOTSTRAP with
`
`network interface,
`
`the
`
`required
`
`network
`
`connectivity
`
`control.
`
`flow control, and error :Ontrol.
`
`The design methodology and damonstrations of two
`
`implementations
`
`of
`
`both
`
`BOOT
`
`LOADER
`
`and
`
`REMOTE
`
`BOOTSTRAP, written in MACRO-11 and PL/M-BS respectively.
`
`are described in Chapter 4.
`
`Chapter 5 describes the advantages, disadvantages,
`
`and several potential applications of this successfully
`
`demonstrated download technique.
`
`PMC Exhibit 2088
`
`ApmewPMC
`|PR2016-00753
`
`Page13
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 13
`
`
`
`1.1 Approach
`
`The LANs
`
`(Local Area Networks) can be classified
`
`into two types, Baseband and Broadband.
`
`The Baseband type
`
`LAN uses a single digital
`
`frenquency as the transmission
`
`carrier with a data rate of lfl-Zfi mbps depending on the
`
`type of transciever used, while the Broadband type uses
`
`an RF (Radio Frequency) signal as the transmission carrier
`
`with multiple RF channels in the 566-400 MHz bandwidth and
`
`a 2-5 mbps data rate on each channel.
`
`The goal of the
`
`topology design is to achieve a
`
`specific performance at a minimal
`
`cost.
`
`As
`
`shown
`
`in
`
`Figure 1.3,
`
`two
`
`topologies are practically applied for
`
`LANs’ installation. With the Hierarchial Tree topology.
`
`the higher
`
`PEs
`
`perform control
`
`functions while lower
`
`PEs perform specialized functions.
`
`PE failures higher up
`
`in the tree become very serious tc the LAN. With a Global
`
`Bus
`
`top010gy, each PE is multidropped to the global bus,
`
`and failure of one PE does not affect LAN’s performance.
`
`Figure 1.4 shows the typical LAN’s configuration.
`
`In recent years, a wide variety of
`
`LANs
`
`from
`
`different vendors running under different environments
`
`have been developed.
`
`These include systems such as
`
`Omninet
`
`(Corvus Systems). Net/One
`
`(Ungermann-Bass).
`
`Cluster/One (Nestar Systems), Ringnet
`
`(Prime Computers),
`
`Wangnet
`
`(Wang Laboraries). Domain (Appollo Computers),
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00753
`
`Page14
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 14
`
`
`
`EDI—SEE Di:
`
`GLOBAL BUS
`
`SIERACEIAL TREE
`
`Figure 1.3
`
`LAN Topologies
`
`“HIM EMIIIUIM
`II I'll URI
`
`lllllfll
`
`I"
`
`Figure 1.4 Typical LAN Configuration
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page15
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 15
`
`
`
`Token/Net
`
`(Concord Data Systems). Localnet (Sytek), and
`
`Ethernet
`
`(Dec, Intel, and Xerox).
`
`These commercially
`
`available LANs provide the users with the ability to
`
`access remote programs. access remote data bases. and add
`
`communication facilities.
`
`1.1.1 Ethernet
`
`The above mentioned Ethernet
`
`is
`
`a
`
`baseband,
`
`datagram LAN providing a
`
`communication
`
`facility for
`
`high-speed
`
`(1G mbps)
`
`data
`
`exchange
`
`among computers.
`
`located within 2.5 kilometers of each other.
`
`over one
`
`5% ohm coaxial cable. Ethernet
`
`(1982).
`
`The connection
`
`of computers to the Ethernet
`
`LAN
`
`forms a Global Bus
`
`topology
`
`(Refer to Figure 1.5)
`
`so
`
`that
`
`one
`
`station
`
`failure will
`
`not
`
`affect
`
`the
`
`performance
`
`of
`
`the LAN.
`
`Also because it
`
`is medium cost and medium performance.
`
`one Ethernet LAN
`
`has been installed in
`
`CERL (Computer
`
`Engineering Research
`
`laborary)
`
`for research purpose,
`
`and will be used for our study approach.
`
`1.1.2 PPP-ll and LSI”11 Nodes
`
`The NIlGlZ
`
`UNIBUS
`
`Ethernet Communications
`
`Controller and the NIZElfl
`
`CBUS Ethernet Communications
`
`Controller,
`
`implemented by Interlan Corporation, contain
`
`all
`
`the data
`
`communications
`
`logic
`
`required
`
`for
`
`interfacing DFC’s (Digital Equipment Corporation) family
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page16
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 16
`
`
`
`of LSI-Il and QBUS PEP-11 computers to an Ethernet LAN.
`
`One
`
`PDP-11/44 minicomputer with
`
`an NIZCIE Ethernet
`
`Controller and an LSI-11/23 minicomputer with an NIlfllC
`
`Ethernet Controller have been connected to the Ethernet
`
`LAN in CERL.
`
`Although
`
`Nlldlz
`
`and
`
`NIZZIZ
`
`communications
`
`controllers are completely compatible with the Ethernet LAN
`
`so that either LSI-11/25 or PDP-ll/44 node may talk with
`
`any other nodes on Ethernet LAN,
`
`they are treated as a pair
`
`of nodes for our special purpose,
`
`discussed in Sec. 1.1,
`
`because they have same type of host CPU.
`
`Any one of them
`
`will perform as the
`
`SMART
`
`NOFE while the other
`
`one
`
`is
`
`the simulated REMOTE NUDE.
`
`1.1.3 iAPXBS Family
`
`Another
`
`Ethernet
`
`Communications
`
`Controller
`
`implemented by Intel (Intel Corporation),
`
`iSBCSBZ, provides
`
`the data
`
`communications
`
`10gic
`
`required
`
`for
`
`interfacing
`
`Multibus Systems to an Ethernet LAN. Another pair of nodes
`
`for
`
`our
`
`research
`
`purposes
`
`is
`
`one
`
`o”
`
`Intel's
`
`MES
`
`(Microprocessor Development Syster Intellec Series IV) and
`
`one Single Board Computer
`
`iSBCBB/SZ.
`
`Each has been
`
`connected with an iSBC553 Communications Controller to the
`
`Ethernet
`
`IAN in CERI recently. Unlike the PEP-11/44 and
`
`LSI-ll/ZS case,
`
`the MDS, which has mass storage devices
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00753
`
`Page 17
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 17
`
`
`
`and several I/O connections, will play the role of
`
`the
`
`SMART
`
`NODE while
`
`iSBCBS/SZ, which
`
`has
`
`no
`
`storage
`
`periphrals, will play as the
`
`REMOTE
`
`MODE
`
`(Refer
`
`to
`
`Figure 1.5).
`
`The program of the REMOTE PROCESS will be created
`
`at the
`
`SMART NODF.
`
`The executable module of the REMOTE
`
`PROCESS will be
`
`developed at
`
`the
`
`SMART
`
`NODE
`
`and
`
`be
`
`downloaded from the
`
`SMART
`
`NODE to the
`
`REMOTE NODE for
`
`execution at
`
`the REMOTE MODE.
`
`REMOTE NODE
`
`SMART MODE
`
`iSECBE/EO
`
`152C550
`
`
`
` NIlGlB
`
`LSI-ll/ZS
`
`PDP-ll/éé
`
`
`Figure 1.5 Ethernet LAN in CEFL
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 18
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 18
`
`
`
`CHAPTER
`
`n
`4
`
`LOCAL AREA NETWORK SYSTEM STRUCTURE
`
`A heterogeneous computer local area network can
`
`consists of a wide variety of nachines which process
`
`different
`
`tasks
`
`under particular
`
`environments
`
`by
`
`employing different processors.
`
`In order to reduce
`
`design complexity, modern computer
`
`IANs are designed in
`
`a highly structured way. Most LANs are organized using
`
`a modular layering concept which provides an intEgrated
`
`systems approach by decomposing large complex tasks into
`
`smaller, more managable, modular layers.
`
`Each
`
`layer
`
`performs a set of well-defined functions,
`
`and
`
`has
`
`a
`
`well—defined
`
`set of
`
`higher
`
`and lowerlayer interfaces.
`
`Therefore.
`
`to one end of
`
`the communication channel, each
`
`layer except
`
`the lowest
`
`layer performs a peer protocol
`
`operation with the protocol corresponding layer on the
`
`other end.
`
`As
`
`a
`
`first
`
`step
`
`toward
`
`the
`
`international
`
`standardization of
`
`the
`
`various
`
`network protocols,
`
`ISO (International Standard Organization) has proposed the
`
`seven-layer Reference Model of Open System Interconnection
`
`(OSI), Zimmermann (1982).
`
`10
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page19
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 19
`
`
`
`11
`
`Refering to the 051 Reference Model
`
`in Figure
`
`2.1, when transmitting.
`
`the user process
`
`(Application
`
`Layer) passes information to
`
`layer 5.
`
`then
`
`each
`
`layer
`
`encapsulates the information by appending its frame header
`
`to the information and passes the encapsulted frame to the
`
`next
`
`lower layer all the way down to the Physical Layer.
`
`When receiving,
`
`the Physical
`
`layer receives the packet
`
`from the network,
`
`then each layer decapsultes the packet
`
`by peeling off its frame
`
`header
`
`from the
`
`packet
`
`and
`
`passes
`
`the decapsulted
`
`frame
`
`to the next higher layer
`
`all
`
`the way up to the Application Layer
`
`(User Process)
`
`(See Figure 2.2).
`
`The 031 Reference Model will be used
`
`as the basis for discussion of protocols in the Ethernet
`
`examples.
`
`2.1 Logical Structure
`
`As
`
`shown in Figure 2.3,
`
`the LAN vendors supply
`
`the implementation of
`
`lower layers of
`
`the 051 Reference
`
`Model so that
`
`the
`
`LAN users
`
`can
`
`develop
`
`their
`
`own
`
`software for implementing higher layers.
`
`The Ethernet Data Link Layer and Physical Layer
`
`Specifications. specified by Xerox and jointly supported
`
`by Dec,
`
`Intel,
`
`and Xerox,
`
`is logically structured and
`
`complies with the Data link Layer and Physical Layer of
`
`the 051 Reference Model
`
`(See Figure 2.4).
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 20
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 20
`
`
`
`12
`
`HOST
`
`A
`
`VIRTUAL LINKS
`
`HOST
`
`B
`
`APPLICATION
`LAYER
`(7)
`
`PRESENTATION
`LAYER
`(6)
`
`SESSION
`LAYER (5)
`
`TRANSPORT
`LAYER (4)
`
`NETWORK
`LAYER (3)
`
`DATA LINK
`LAYER (Z)
`
`PHYSICAL
`LAYER (1)
`
`PEER PROTOCOL
`
`PEER PROTOCOL
`
`[PEER PROTOCOL
`
`PEER PROTOCOL
`
`PEER PROTOCOL
`
`PEER PROTOCOL
`
`PEER PROT COL
`
`APPLICATION
`LAYER
`(7)
`
`PRESENTATION
`LAYER
`(6)
`
`SESSION
`LAYER (5)
`
`TRANSPORT
`LAYER (5)
`
`NETWORK
`IAYER (3)
`
`DATA LINK
`LAYER (2)
`
`PHYSICAL
`LAYER (1)
`
`PHYSICAL TRANSMISSION MELIA
`
`Figure 2.1
`
`OSI Reference Model
`
`I APPLICATION
`
`'
`
`PRESENTATION
`
`PACKET TRANSMITTER ON TEE MEDIA
`
`Figure 2.2 Frame Encapsulation
`
`PMC Exhibit 2088
`
`ApmemPMC
`IPR2016-00753
`
`Page21
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 21
`
`
`
`15
`
`APPLICATION
`
`PRESENTATION
`
`SOFTWARE
`m DEVELOPED
`BY
`LAN
`USER
`
`TRANSPORT
`
`LAYER (7)
`
`LAYER (6)
`
`LAYER (5)
`
`LAYER (4)
`
`------ —-
`
`NETNORK
`
`-——----—-—-— ---—-—--—-— LAYER (3)
`u
`
`---——--
`
`DATA LINK
`
`PHYSICAL
`
`HARDWARE/SOFTWARE
`DEVELOPED
`BY
`LAN VENDORS
`
`LAYER (2)
`
`LAYER (1)
`
`PHYSICAL TEANSWISSION MEDIA
`
`Figure 2.3
`
`lAN Protocol Resources
`
`CLIENT LAYER (HIGHER LAYERS)
`
`DATA LINK
`INTERFACE
`
`TRANSMIT DATA
`ENCAPSULTAION
`
`TRANSHIT LINK
`MANAGEMENT
`
`LINK
`RECEIVE
`MANAGEMENT
`
`CHANNEL ACCESS
`
`PHYSICAL
`INTERFACE
`
`TRANSMIT DATA
`ENCODING
`
`DATA
`RECEIVE
`DECODING
`
`RECEIVE
`
`Figure 2.4 Ethernet Architecture Layering
`
`“
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page22
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 22
`
`
`
`14
`
`2.1.1 Ethernet
`
`The Ethernet Data Link Layer supports the two main
`
`functions generally associated with a data link control
`
`procedure as follows:
`
`1.
`
`late Encapsulation/Decapsulation:
`
`- Framing
`
`(variable
`
`frame
`
`size
`
`boundary
`
`delimitation}
`
`— Addressing (handling of aource and destination
`
`addresses)
`
`- Error Detection (detection of physical channel
`
`transmission errors)
`
`2. Link Management:
`
`- Channel Allocation (collision avoidance}
`
`- Contention Resolution
`
`(CSMA/CD collision
`
`handling scheme)
`
`The Ethernet
`
`Physical Layer
`
`is
`
`capable
`
`of
`
`exchanging
`
`data
`
`over
`
`a
`
`coaxial
`
`cable,
`
`enabling
`
`communication between the respective stations at
`
`the Data
`
`Link Layer and higher layers of the 051 Reference Model.
`
`It supports the two main functions generally associated
`
`with physical channel control:
`
`1. Data Encoding:
`
`— Preamble Generation/Removal (for synchronization)
`
`- Bit Encoding/Decoding (between binary and phase-
`
`encoded form)
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 23
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 23
`
`
`
`15
`
`2. Channel Access:
`
`- Bit Transmission/Reception (of encoded data)
`
`— Carrier Sense (indicating traffic on the channel)
`
`- Collision Detection (indicating contention on the
`
`channel)
`
`The Physical Layer
`
`transmits the messages onto the
`
`coaxial cable in the typical
`
`frame format illustrated in
`
`Figure 2.5.
`
`2.1.2 NIlciz, leoit, and iSFCfiBZ
`
`The Nllwla and NIZClC Ethernet Communications
`
`Controllers shown in Figure 2.6,
`
`implemented by Interlan
`
`Corporation, provide two layers of the 031 Model,
`
`the
`
`Physical
`
`layer and the Data link layer, Nllelz (1982),
`
`NIZZIZ (1932).
`
`In addition to the functions provided by
`
`the Nllfllz and NI2G1£ Controllers,
`
`the 153C553 Ethernet
`
`Communications Controller shown in Figure 2.7 performs
`
`part, but not all. of the Network Layer protocol
`
`(next
`
`higher layer to the Data Link Layer of
`
`the 051 Reference
`
`Model). There is a MIP (Multibus Interprocessor Protocol)
`
`facility, residing on the iSBCSSZ Controller Board,
`
`through which the host computer talks to the Ethernet
`
`LAN Channel by exchanging messages within the shared
`
`memory on c Multi-bus System Bus. MIP actually performs
`
`Network Management issues.
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00753
`
`Page 24
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 24
`
`
`
`16
`
`nun-m.“
`P
`:
`64 BITS PREAMBLE
`
`DA
`
`SA
`
`LC
`
`:
`
`:
`
`:
`
`DESTINATION ADDRESS
`
`SOURCE ADDRESS
`
`LINK CONTROL FIELD
`
`INFO.:
`
`DATA PACKET FROM NETWORK LAYER
`
`PCS
`
`FRAME CHECK SEQUENCE
`
`Figure 2.5
`
`Typical Message Frame Format On
`Ethernet LAN
`
`
`
`
`
`PEP-11
`HOST
`COMPUTER
`
`CLIENT
`
`LSI-ll
`HOST
`COMPUTER
`
`
`
`
`
`
`
`Figure
`
`2.6
`
`Implementation of NIlfilG and NIZBlB
`
`
`
` EHultibusSystemBus
`
`
`
`
`
` INTEL
`HOST COMPUTER
`
`CLIENT
`
`
`
`
`
`
`
`
`
`
`APPLICATION
`
`TRANSPORT
`
`PHYSICAL
`
`
`
`
`
`
`
`
`fl"iSBCSSO
`
`Figure 2.7
`
`Implementation of iSBCSSG
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page25
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 25
`
`
`
`17
`
`2.1.3 REMOTE BOOTSTRA} and BOOT LOADER
`
`According to the 051 Reference Model.
`
`the
`
`Presentation Layer performs functions that
`
`are
`
`requested
`
`sufficiently often to warrant finding a
`
`general
`
`solution
`
`for them, rather than letting each user solve the problems.
`
`These functions can often be performed by library routines
`
`called by the user.
`
`Most user programs do not exchange
`
`random binary bit strings;
`
`they exchange things such as
`
`people's names, city names, dates, and amounts of money.
`
`The REMOTE PROCESS is the program to be downloaded as a
`
`bit stream of executaole code to the REMOTE NODF.
`
`Up to this point,
`
`the only thing the user on the
`
`SMART NODE needs to know is the network address of the
`
`REMOTE PROCESS to download. i.e.
`
`the Destination Address
`
`portion of
`
`the Ethernet frame format.
`
`Also,
`
`the only
`
`thine the REMOTE NODE needs to know is that
`
`the received
`
`REMOTE PROCESS is coming from the expected
`DA—
`
`SMART
`
`NODE,
`
`i.
`
`.
`
`from the expected Source Address.
`
`All
`
`these tasxs
`
`are supposed to be done at
`
`the Network Layer of the 051
`
`Reference Model.
`
`For this reason,
`
`the REMOTE BOOTSTRAP
`
`and EOOT LOADER actually perform functions requested by
`
`the Network Layer only.
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page26
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 26
`
`
`
`18
`
`2.2 Software Residency
`
`Wether or not
`
`the host computer is intends to talk
`
`with the network,
`
`the Ethernet Controller performs
`
`diagnostic tests when the host computer powers up, and
`
`then is ready for message traffic.
`
`The way the host
`
`computer talks to the Ethernet Controller differs from one
`
`implementation to another.
`
`The REMOTE BOOTSTRAP and BOOT
`
`IOADER perform the Network Layer only as we discussed in
`
`the preceeding section;
`
`thus the REMOTE BOOTSTRAP software
`
`can be linked and loaded in any area other than the area
`
`occupied by the REMOTE PROCESS or
`
`the Operating System.
`
`2.2.1 NIlQlG, NI2Q1$ and LSI-11, PDP-ll family
`
`Normally,
`
`the REMOTE NOTE would not have an
`
`operating system, and the bootstrap can be anywhere in
`
`memory.
`
`As we discussed in 1.1.2, we
`
`implement
`
`the REMOTE
`
`BOOTSTRAP with either a PDP-ll/é4 or an LSI-ll/ZS, which
`
`has mass storage devices and terminal with it, as the
`
`simulated REMOTE NODE.
`
`For demonstration purposes.
`
`the
`
`LSI-ll/ZS will be used as a REMOTE NODE. We have to
`
`consider the memory location of the Resident Operating
`
`System and the downloaded REMOTE PROCESS.
`
`For
`
`the RT-ll Operating System,
`
`the Resident
`
`Monitor. User Service Routines. Device Handlers. and the
`
`Keyboard Monitor are arranged in the highest memory Just
`
`PMC Exhibit 2088
`
`ApmewPMC
`|PR2016-00753
`
`Page 27
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 27
`
`
`
`19
`
`below the 1/0 page.
`
`The lowest memory (ZZZ-777 Octal)
`
`is reserved for the Trap Vectors, System Communication
`
`Area, and Interrupt Vectors.
`
`The best place for the
`
`REMOTE BOOTSTRAP is the area Just below the Keyboard
`
`Monitor which the user program can not nornally reach.
`
`That way the downloaded
`
`REMOTE PROCESS can be treated
`
`as
`
`a
`
`usual user
`
`program (Normally starts fror the
`
`address of 190% octal) (See Figure 2.8).
`
`Memory
`Address
`(octal)
`177777
`
`156006
`
`123022
`
`10%2
`
`777
`0
`
`1/0
`
`Page
`
`
` Monitor
`Handlers
`
`BOOT LOADER/BOOTSTRAP
`
`User Service Routines
`
`
`
`REMOTE PROCESS
`
`Vectors and Traps
`
`Figure 2.8 PDP-ll and LSI-ll BOOTSTFAP Residency
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page28
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 28
`
`
`
`20
`
`2.2.2 153C550 and iSBCBS/SZ (See Figure 2.8)
`
`The iSBCBS/BO. which is a
`
`bare
`
`computer,
`
`is
`
`a
`
`REMOTE NODE.
`
`We may load the
`
`REMOTE
`
`ROOTSTRAP in any
`
`location other than the area
`
`occupied by
`
`the
`
`downloaded
`
`REMOTE PROCESS. Our approach is to burn an EPROM with the
`
`absolute executable module of
`
`the
`
`REMOTE ‘BOOTSTRAP,
`
`put
`
`the
`
`EPROM on
`
`iSEC86/3O board,
`
`then map the
`
`EPFOM in the
`
`lowest ROM memory (FOOOOH) as shown in Figure 2.9.
`
`With
`
`the LOCB6 utility on the MDS machine,
`
`INTELb (1982),
`
`the
`
`relocatable module of the REMOTE PROCESS can be assigned
`
`to a certain memory location, assigned by the user,
`
`to
`
`form an absolute load module of the REMOTE PROCESS.
`
`The loader on the MOS machine always loads the
`
`executable module in the memory area,
`
`somewhere around
`
`SOOOOE,
`
`Just
`
`above
`
`the
`
`iNDX
`
`operating system which
`
`supports the execution of the program on
`
`8286 or
`
`8088
`
`microprocessors.
`
`Figure 2.1a shows the system memory
`
`allocation and BOOT LOADER residency.
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page29
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 29
`
`
`
`21
`
`ROM
`
`ON
`BOARD
`
`
`
`FFFFFH -
`
`'
`
`REMOTE BOOTSTRAP
`
`,
`
`REMOTE PROCESS
`
`-
`
`
`
`FBZOZH
`
`FZOZZH
`
`lFFFFH
`
`OFFFFH
`
`GEZOZH
`
`Figure 2.9
`
`BOOTSTRAP Residency (in iSBCBG/SZ)
`
`AFFFFE
`
`9FFFFH
`
`segmea
`
`500293
`
`@OZQOH
`
`iSBCESS'
`
`RAM
`
`REMOTE PROCESS
`
`BOOT
`
`LOADER
`
`iNDX
`
`Operating System
`
`IEU-2
`
`0910
`
`ICE
`
`Figure 2.19
`
`BOOT LOADER (in MDS)
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page30
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 30
`
`
`
`CHAPTER
`
`5
`
`FUNCTIONAL DESCRIPTION
`
`The discussions in chapter 2 showed that both the
`
`REMOTE
`
`BOOTSTRAP
`
`and
`
`the
`
`BOOT
`
`LOADER
`
`perform as
`
`an
`
`interface between a host computer or PE and the Ethernet
`
`Communications Controller.
`
`3.1 Overall Block Diagram
`
`As we have mentioned in Section 1.1.3,
`
`the REMOTE
`
`PROCESS program is created and the executable module
`
`of
`
`the
`
`REMOTE PROCESS is developed on the host computer
`
`at
`
`the SMART NODE.
`
`The BOOT LOADER devides
`
`(disassembles)
`
`the
`
`REMOTE PROCESS code into packets which suit
`
`the size
`
`of
`
`the
`
`transmit buffer and sends the
`
`packets one after
`
`another to the network interface.
`
`The packets are then
`
`transmitted to the REMOTE NODE.
`
`After sending out each
`
`packet,
`
`the
`
`BOOT LOADER waits
`
`for
`
`an
`
`acknowledgement
`
`signal
`
`from the REMOTE NODE to make sure that
`
`the
`
`packet
`
`has been received by the REMOTE NODE correctly. When the
`
`last
`
`packet of
`
`the
`
`REMOTE
`
`PROCESS
`
`code
`
`is
`
`sent.
`
`an
`
`independent packet
`
`is
`
`constructed with
`
`the
`
`execution
`
`command and entry point of the REMOTE PROCESS to tell the
`
`REMOTE NODE to execute the REMOTE PROCESS.
`
`22
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page31
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 31
`
`
`
`23
`
`The REMOTE BOOTSTRAP receives the packets. which
`
`the
`
`network interface received over
`
`the coaxial
`
`cable,
`
`and
`
`stores (reassembles)
`
`them in
`
`the memory
`
`location
`
`piggybacked on the received packets. After each packet is
`
`receiVEd,
`
`the REMOTE BOOTSTRAP sends an acknowledgement,
`
`either positive or negative,
`
`to the
`
`BOOT LOADER to
`
`tell
`
`whether
`
`the packet was
`
`received
`
`correctly.
`
`When
`
`the
`
`packet which includes the execution command and the entry
`
`point of the REMOTE PROCESS is received,
`
`the REMOTE NODE
`
`starts executing the
`
`REMOTE PROCESS by simply Jumping to
`
`the entry point of
`
`the REMOTE PROCESS.
`
`Figure 3.1 outlines the role the REMOTE BOOTSTRAP
`
`and BOOT IOAEER play in the overall
`
`logical architecture
`
`of the Ethernet LAN.
`
`REMOTE non:
`
`SMART
`
`NOIE
`
`HOST
`REMOTE PROCESS Execution
`1|
`
`HOST
`REMOTE PROCESS Codlne
`A
`
`u
`
`
`
`
`
`Figure 3.1 Overall Logical Diagram
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00753
`
`Page32
`
`
`
`
`BOOT LOADER
`REMOTE PROCESS
`Downloading
`
`J-
`
`v
`INTERFACE
`
`
`
`NETWORK
`
`REMOTE BOOTSTRAP
`REMOTE PROCESS
`Receiving
`1|
`
`\
`
`NETWORK
`
`INTERFACE
`
`
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00753
`Page 32
`
`
`
`24
`
`3.2
`
`Programming Interface
`
`INTERLAN and
`
`INTEL
`
`implem