`
`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-00755
`
`Page1
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 quotations
`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
`
`are
`
`SIGNED:
`
`2649 2%; fig;
`
`‘-
`
`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-00755
`
`Page2
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 2
`
`
`
`©1984
`
`KUO—SHENG HSIAO
`
`All Rights Reserved
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 3
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 3
`
`
`
`ACKNOWLEGEMENTS
`
`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
`
`thahxs 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-00755
`
`Page4
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 4
`
`
`
`TABLE OF CONTENTS
`
`LIST OF ILLUSTRATIONS...
`.
`oouuoooiovunocoooooon
`
`ABSTRACT......
`
`1
`
`INTRODUCTION....... DIIICIIIOOOIIIUIOOOIIOIIOIIIOOI1
`
`101
`
`IOOQIOOCIOIIJI5
`Approach.......................
`on?
`15151EthernetllflllbllllilililIOOIIOIIIIOII
`CD7
`NOdES.o.....o......
`1.1.2
`ooooooonuooounne
`1.1.3 iAPXB6 Family.......
`
`LOCAL AREA NETWORK SYSTEM STRUCTURE..............1fl
`
`.............11
`2.1 Logical Structure.........
`2.1.1 Ethernet..............................14
`2.1.2 NIIEIE. NI201G, and iSEC55Z...........15
`2.1.3 REMOTE EOOTSTRAP and BOOT LOADER......17
`Software Residency..........................1B
`2.2.1 Nllflle, NI2010 and LSI-11, PD?-11
`Fami1y................................18
`2.2.2 1SBC55O and ISBC36/36......
`..26
`
`2.2
`
`FUNCTIONAL DESCRIPTION.........
`
`.....22
`
`3C1
`3.2
`
`oaolnnuioonalcloouzg
`Overall Block D1agran.....
`Conuounocozé
`Programming Interface.............
`3.2.1 Nllwlw and NI2B1Z.....................24
`3.2.2 1SBC55@...............................27
`3.3 Functional Operation........................31
`3.3.1 NI101O and NI2@1$.....................32
`3.3.2 iSBC55@...............................33
`3.3.3 REMOTE BOOTSTRAP and BOOT LOADEH
`Routines............
`
`JIOOS5
`IUOISB
`3.3.4 Connectivity................
`consonant;-00049
`3.3.5 Flow Control.......
`uuouég
`3.3.5 Error Control....
`
`EXAVPLF APPLICATION PROGRAMS . .
`
`. . . . . . .............é2
`
`REMOTE PROCESS Examp1es.....................42
`4.1
`4.2 MACRO-11 Examples...... . . . .
`.
`.
`.
`. . ............43
`4.3
`PL/M—B5 Examples . .
`.
`.
`. ... . . . . . .
`. .... . . . . .....45
`
`iv
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page5
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 5
`
`
`
`5
`
`cONCLUSION;ItliIOC I J O O O O O O DIDOJIIOOOUIOOUOIOIOOIIO47
`
`Page
`
`. . . ..47
`. .
`. .
`. .
`. .
`.
`5.1 Advantages and Disadvantages . . .
`5.1.1 Simplicity. Cost, and Expandibi1ity....47
`5.1.2 Media Access Protoco1s........ . .
`. .
`. . . ..48
`
`5.2 Potential Application Areas..................49
`5.2.1 Automatic Test Equipment....... .
`.
`. . . . ..49
`5.2.2 Laboratory Automation . . . . ... . . . . .......5O
`5.2.3 Factory Automation .
`. . . . . . ... . .
`. . . . . . . ..EO
`
`APPENDIX A: NIIZIE AND NI2C1O COMMAND FUNCTION CODE....52
`
`APPENDIX B: NIIEIO AND NI201B COMMAND §TATUS CODE .
`
`. . . ..54
`
`APPENDIX C:
`
`COMMAND REQUEST BLOCKS FOR iSEC55@
`I O O I O I I
`I O I
`I O I U O I OIOOOICOIOOIIUOIISB
`
`APPENDIX D:
`
`BOOT LOADER LOGICAL DIAGRAM.. . . . . . . . . .
`
`. . . ..55
`
`APPENDIX E:
`
`REMOTE BOOTSTRAP LOGICAL DIA3RAM...........6O
`
`APPENDIX E:
`
`REMOTE BOOTSTRAP PSEUDO CODE...............61
`
`APPENDIX C:
`
`BOOT LOADER PSEUDO CODE . . . . . . . . . . ..........65
`
`APPENDIX E:
`
`EXAMPLE MAP FIIE (PDl—11/44) .
`
`. . .
`
`. .
`
`. .
`
`.
`
`.
`
`. . . ..66
`
`APPENDIX I:
`
`EXAMPLE REMOTE PROCESS (FORTRAN)... . . . . . . ..67
`
`APPENDIX J:
`
`EXAMPLE REMOTE PROCESS (PL/M—86).... . .
`
`.
`
`. . ..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 . . . . . . . . ..?B
`
`APPENDIX N:
`
`CONTROILER$INIT EXAMPLE PROGRAM.. . . .
`
`. .
`
`.
`
`.
`
`. ..8?
`
`APPENDIX 0:
`
`PL/M-86 EXAMPLE BOOT LOADER PROGRAM
`
`0.1
`BOOT LOADER Definitions File......... . . .
`. . . ..91
`0.2 Library Routines for BOOT LOADER...... . . . .
`. ..9E
`0.3
`BOOT LOADER Example Program..................97
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 6
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 6
`
`
`
`vi
`
`APPENDIX P:
`
`PL/M-86 EXAWPLE BOOTSTRAP PROGRAM
`
`P.1
`
`REMOTE BOOTSTRAP Definitions Fi1e...........1@@
`
`. ..104
`P.2 Library Routines for REMOTE BOOTSTRAP. . . .
`P.5
`REMOTE BOOTSTRAP Example Program...... . . . . ..1Z7
`
`LIST OF REFERENCES..
`
`IOIIOOIOOOOIIOIOIIUII
`
`..............1@8
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 7
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 Topo1ogies................ . . . . ........ .6
`
`Typical LAN Configuration.. . . . . . . .
`
`. .........6
`
`Ethernet LAN in CERL . .
`
`.
`
`.
`
`. . .
`
`.
`
`. . .
`
`. . .
`
`. ... .
`
`. . . ..9
`
`OSI Reference Model . . . . .
`
`.
`
`. . . . . .... . . . . .....12
`
`Frame Encapsulation . . . . . ...... . . . . . ........12
`
`LAN Protocol hesources . .
`
`.
`
`. . . .
`
`.
`
`. . .
`
`. .........13
`
`Ethernet Architecture Layering . . . . .........13
`
`Typical Message Frame Format on
`Ethernet LAN. .
`. . . . . .
`. .
`. .
`. . ..............16
`
`Irplementation of NIIOIO and NI261C.. . . . . ..1€
`
`Implementation of
`
`iSPC55% . .
`
`. .
`
`. . .
`
`.
`
`.
`
`. .
`
`. . .
`
`. . ..16
`
`PDP-11 and LS1-11 BOOTSTRAP Fe5idenCy......19
`
`BOOTSTRAP Residency (iSEC8fi/30) . . .
`
`. . .......21
`
`BOOT LOADER hesidency (MDS) .
`
`.
`
`. . . . .
`
`. . . . .
`
`. . ..21
`
`BOOTSTRAP Overall Logical Diagrem..........23
`
`Command and Status Register . .
`
`. .
`
`. . .
`
`. ........26
`
`Transmit Frame Format
`
`(NIIOIO and NI2010)..28
`
`Receive Frame Format
`
`(Nllfilz and Nl2Z10)...28
`
`General Format of Command Request B1ock....30
`
`Major Components of BOOT IOALER and
`REMOTE BOOTSTRAP . . . .
`. ..................
`
`vii
`
`3.3
`
`3.4
`
`3.5
`
`3.6
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page8
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 £0 6
`
`TEITIOCE
`
`IlOd€
`
`and E0
`
`EX€('l1tE
`
`‘H18
`
`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-11/44 computer
`
`and
`
`then
`
`download
`
`the
`
`module through the Ethernet
`
`LAN to the LS1-11/23 computer
`
`and to
`
`execute
`
`the module
`
`on
`
`the LS1-11/23 computer.
`
`Another one is to download the executable module from the
`
`Intel Series IV Microcomputer Development
`
`System through
`
`the Fthernet LAN to the iSBC86/5% single
`
`board computer
`
`and to execute the module on the single board computer.
`
`Potential
`
`applioaiton areas
`
`of
`
`this
`
`technique
`
`are like Automatic Test Equipment, Laboratory Automation,
`
`and Factory Automation.
`
`viii
`
`PMC Exhibit 2088
`
`ApmevPMC
`|PR2016-00755
`
`Page9
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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-00755
`
`Page1O
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 10
`
`
`
`user programs can be processed.
`
`Let
`
`us
`
`define
`
`such a
`
`computer, which has a
`
`terminal, I/0 devices. mass storage
`
`devices and/or intelligence with it. on the network as a
`
`"SMART Noon"
`
`(See Figure 1.1), for example, VAX,
`
`IBM/PC,
`
`IBM/4341,
`
`INTEL so/33o,
`
`INTEL so/sen, 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,
`
`iSBC86/3%,
`
`iSEC286/10, 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 NODE by using
`
`the network bootstrap.
`
`Here we define such
`
`a
`
`task
`
`or
`
`process
`
`to
`
`be
`
`downloaded and processed at
`
`the
`
`REMOTE
`
`NODE as
`
`REMOTE
`
`pnocrss" (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 worn
`
`for
`
`downloading REMOTE PROCESS is denoted by "BOOT LOALER".
`
`The later part of this Chapter willintroduce
`
`existing commercially available LANs (Iocal Area Networks)
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page11
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 11
`
`
`
`_ oneratin S stem
`
`
`
`. User Program
`
`
`
`T
`
`Execution
`Network Interface
`
`Figure 1.1 Outline of SMART NODE
`
`1/0 Page
`
`HEHORY
`
`Data
`Acquisition
`Equipment
`
`Data
`Display
`EQuiPm€3t
`
`
`
`User Program
`
`Network
`Interface
`
`
`
`
`Figure 1.2 Outline of REMOTE NODE
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 12
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 12
`
`
`
`and explain why we select
`
`the Ethernet LAN for our study
`
`approach.
`
`on
`
`Chapter 4 describes the modular layering concept
`
`of computer networks protocols by referencing the CS1
`
`(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 NODE 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 control.
`
`The design methodology and demonstrations of two
`
`implementations
`
`of
`
`both
`
`BOOT
`
`LOADER
`
`and
`
`REMOTE
`
`BOOTSTRAP, written in MACRO-11 and PL/M-85 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
`
`ApmemPMC
`|PR2016-00755
`
`Page13
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 10-2% 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.5,
`
`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
`
`topology, 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-00755
`
`Page14
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 14
`
`
`
`Efl 3%:
`
`GLOBAL BUS
`
`SIERACEIAL TREE
`
`Figure 1.3
`
`LAN Topologies
`
`lllllfll
`
`llllflll IDIIIIUIIMS
`II III! I”!
`
`Figure 1.4 Typical LAN Configuration
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page15
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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
`
`(1% 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.3)
`
`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-11 and LSI°11 Nodes
`
`The
`
`NI1@1%
`
`UNIBUS
`
`Ethernet Communications
`
`Controller and the Nl2010
`
`QBUS 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-00755
`
`Page16
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 16
`
`
`
`of LSI-11 and QBUS PD}-11 computers to an Ethernet LAN.
`
`One
`
`PDP-11/44 minicomputer with
`
`an NI2%1Z Ethernet
`
`Controller and an LSI-11/23 minicomputer with an NI191@
`
`Ethernet Controller have been connected to the Ethernet
`
`LAN in CERL.
`
`Although
`
`NI1Z1$
`
`and
`
`NIZZIZ
`
`communications
`
`controllers are completely compatible with the Ethernet LAN
`
`so that either LSI-11/23 or PDP-11/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 N0rE while the other
`
`one
`
`is
`
`the simulated REMOTE NUDE.
`
`1.1.3 iAPX85 Family
`
`Another
`
`Ethernet
`
`Communications
`
`Controller
`
`implemented by Intel (Intel Corporation),
`
`iSBC550. provides
`
`the data
`
`communications
`
`logic
`
`required
`
`for
`
`interfacing
`
`Multibus Systems to an Ethernet LAN. Another pair of nodes
`
`for
`
`our
`
`research
`
`purposes
`
`is
`
`one
`
`0”
`
`Intel's
`
`MES
`
`(Microprocessor Development Syster Intellec Series IV) and
`
`one Single Board Computer
`
`iSBC86/59.
`
`Each has been
`
`connected with an iSBC55z Communications Controller to the
`
`Ethernet LAN in CERI recently. Unlike the PEP-11/44 and
`
`LSI-11/23 case,
`
`the MDS, which has mass storage devices
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page 17
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 17
`
`
`
`and several I/O connections, will play the role of
`
`the
`
`SMART
`
`NODE while
`
`ISBCBS/56. 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 NODE.
`
`REMOTE NOSE
`
`SMART MODE
`
`iSEC86/50
`
`iSBC55@
` NI1@1B
`
`PDP-11/$4
`
`
`LSI-11/23
`
`Figure 1.5 Ethernet LAN in CEFL
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 18
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 18
`
`
`
`CHAPTER
`
`A
`4
`
`LOCAL AREA NETWORK SYSTEM STRUCTURE
`
`A heterogeneous computer local area network can
`
`consists of a wide variety of machines 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 Laws 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
`
`we1l—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
`
`(051). Zimmermann (1982).
`
`1%
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page19
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 19
`
`
`
`11
`
`Refering to the OSI 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 OSI 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 031 Reference
`
`Model so that
`
`the
`
`LAN users
`
`can
`
`develop
`
`their
`
`ywn
`
`software for implementing higher layers.
`
`The Ethernet Data Link Layer and Physical Layer
`
`Specifications. specified by Xerox and jointly supP0Pt€d
`
`by Dec,
`
`Intel,
`
`and Xerox,
`
`is logically structured and
`
`complies with the Data link Layer and Physical Layer of
`
`the OSI Reference Model
`
`(See Figure 2.4).
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 20
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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
`
`l
`
`PRESENTATION
`
`
`
`PACKET TRANSHITTED ON TEE MEDIA
`
`Figure 2.2 Frame Encapsulation
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page21
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 21
`
`
`
`15
`
`APPLICATION
`
`PRESENTATION
`
`SOFTWARE
` DEVELOPED
`BY
`LAN
`USER
`
`TRANSPORT
`
`LAYER (7)
`
`LAYER (6)
`
`LAYER (5)
`
`LAYER (4)
`
`------ —-
`
`NETWORK
`
`----—--—-—-— ---—-—--—--
`u
`
`LAYER (3)
`
`---—-—-
`
`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
`
`TRANSHIT DATA
`ENCAPSULTAION
`
`TRANSHIT LINK
`MANAGEMENT
`
`LINK
`RECEIVE
`MANAGEMENT
`
`PHYSICAL
`INTERFACE
`
`TRANSMIT DATA
`ENCODING
`
`DATA
`RECEIVE
`DECODING
`
`PHYSICAL
`
`LAYER
`
`RECEIVE
`CHANNEL ACCESS
`
`Figure 2.4 Ethernet Architecture Layering
`
`“
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page22
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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.
`
`Iata 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
`
`ccrmunication between the respective stations at
`
`the Data
`
`Link Layer and higher layers of the CS1 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
`
`ApmemPMC
`|PR2016-00755
`
`Page23
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 NI121Z, NI2@l£, and iSFC55Z
`
`The
`
`NI1@13 and
`
`NI2@1@ Ethernet Communications
`
`Controllers shown in Figure 2.6,
`
`implemented by Interlan
`
`Corporation, provide two layers of the OSI Model,
`
`the
`
`Physical
`
`layer and the Data Link layer, NI1@1Z (1982),
`
`NI2E1Z (1932).
`
`In addition to the functions provided by
`
`the Nllfllz and NI2@1h Controllers,
`
`the 1536553 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 OSI Reference
`
`Model). There is a MIP (Mu1tibus Interprocessor Protocol)
`
`facility, residing on the iSBC55Z 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
`
`ApmewPMC
`|PR2016-00755
`
`Page24
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 24
`
`
`
`16
`
`Tfiiflfll
`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
`
`
`
`
`
`PDP*11
`HOST
`COMPUTER
`
`CLIENT
`
`LSI-11
`HOST
`COMPUTER
`
`
`
`
`
`
`
`Figure
`
`2.6
`
`Implementation of NI1®1@ and NI2B10
`
`
`
` EMultibusSystemBus
`
`
`
`
`
` INTEL
`HOST COMPUTER
`
`CLIENT
`
`
`
`
`
`
`
`
`
`
`APPLICATION
`
`TRANSPORT
`
`PHYSICAL
`
`
`
`
`
`
`
`
`1SBC550T
`
`Figure 2.7
`
`Implementation of iSBC55@
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page25
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 25
`
`
`
`17
`
`2.1.3 REMOTE BOOTSTRAT and BOOT LOADER
`
`According to the OSI 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 hy 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 fornat.
`
`Also,
`
`the only
`
`thins the REMOTE NODE needs to know is that
`
`the received
`
`REMOTE PROCESS is coming from the expected
`Ds..
`
`SMART
`
`NODE,
`
`i.
`
`. fron the expected Source Address.
`
`All
`
`these tasxs
`
`are supposed to be done at
`
`the Network Layer of the OSI
`
`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-00755
`
`Page26
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 NIIQIG, NI2Q1Z and LSI-11, PDP'11 family
`
`Normally,
`
`the REMOTE NOIE 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-11/44 or an LSI-11/23, which
`
`has mass storage devices and terminal with it, as the
`
`simulated REMOTE NODE.
`
`For demonstration purposes,
`
`the
`
`LSI-11/23 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-11 Operating System,
`
`the Resident
`
`Monitor. User Service Routines. Device Handlers. and the
`
`Keyboard Monitor are arranged in the highest memory Just
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page 27
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 27
`
`
`
`19
`
`below the 1/0 page.
`
`The lowest memory ($63-77? 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 norwally 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
`
`133022
`
`IGEC
`
`777
`0
`
`1/0
`
`Page
`
`
` Monitor
`Handlers
`
`BOOT LOADER/BOOTSTRAP
`
`User Service Routines
`
`
`
`REMOTE PROCESS
`
`Vectors and Traps
`
`Figure 2.8
`
`PDP-11 and LSI-11 BOOTSTBAP Residency
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page28
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 28
`
`
`
`20
`
`2.2.2 iSBC550 and iSBC86/3% (See Figure 2.8)
`
`The iSBCe6/30. which is a
`
`bare
`
`computer,
`
`is
`
`a
`
`REMOTE NODE.
`
`We may load the
`
`REMOTE
`
`BOOTSTRAP 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 tnoorsraae,
`
`put
`
`the
`
`EPROM on
`
`iSEC86/3% board,
`
`then map the
`
`EPFOM in the
`
`lowest ROM memory (Fflflflfifi) as shown in Figure 2.9.
`
`with
`
`the LOC86 utility on the MDS machine,
`
`INTELE (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 MDS machine always loads the
`
`executable module in the memory area,
`
`somewhere around
`
`50@fi0E,
`
`just
`
`above
`
`the
`
`iNDX
`
`operating system which
`
`supports the execution of the program on
`
`8286 or
`
`8088
`
`microprocessors.
`
`Figure 2.1% shows the system Memory
`
`allocation and BOOT LOADER residency.
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page29
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 29
`
`
`
`21
`
`ROM
`
`ON
`BOARD
`
`
`
`FFFFFH
`
`'
`
`REMOTE BOOTSTRAP
`
`.
`
`REMOTE PROCESS
`
`-
`
`
`
`FBZZZH
`
`FZOZZH
`
`IFFFFH
`
`BFFFFH
`
`QEZEZH
`
`Figure 2.9
`
`BOOTSTRAP Residency (in iSBCB6/30)
`
`AFFFFE
`
`QFFFFH
`
`sezwea
`
`590293
`
`E90903
`
`iSBC@56'
`
`RAM
`
`REMOTE PROCESS
`
`BOOT
`
`LOADER
`
`iNDX
`
`Operating System
`
`IEU-2
`
`CPIO
`
`ICE
`
`Figure 2.10
`
`BOOT LOADER (in MDS)
`
`PMC Exhibit 2088
`
`ApmemPMC
`|PR2016-00755
`
`Page3O
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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
`
`(disassemb1es}
`
`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-00755
`
`Page31
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`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 EOOTSTRAP 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 LOAEER play in the overall
`
`logical architecture
`
`of the Ethernet LAN.
`
`REMOTE Non:
`
`SMART
`
`NOIE
`
`HOST
`REMOTE PROCESS Coding
`A
`
`u
`
`T
`HOST
`REMOTE PROCESS Execution
`1|
`
`REMOTE BOOTSTRAP
`REMOTE PROCESS
`Receiving
`1|
`
`\
`
`NETWORK
`
`INTERFACE
`
`
`
`
`
`
`
`
`BOOT LOADER
`REMOTE PROCESS
`Downloading
`
`A—
`
`v
`INTERFACE
`
`NETWORK
`
`
`
`Figure 3.1 Overall Logical Diagram
`
`PMC Exhibit 2088
`
`Apple v. PMC
`|PR2016-00755
`
`Page 32
`
`PMC Exhibit 2088
`Apple v. PMC
`IPR2016-00755
`Page 32
`
`
`
`24
`
`3.2
`
`Programming Interface
`
`INTERLAN and
`
`INTEL
`
`implemented
`
`the
`
`Ethe