`
`FOR THE WESTERN DISTRICT OF WASHINGTON
`
`SRC Labs, LLC, & Saint Regis Mohawk
`Tribe,
`Plainttfls‘,
`
`v.
`
`Microsoft Corporation,
`Defendant.
`
`5
`
`:
`
`Civil Action No. 2:18-cv-321-JLR
`
`DECLARATION OF KATHERINE ZIMMERMAN
`
`I, Katherine Zimmerman, state and declare as follows:
`
`1.
`
`I am a Scholarly Communications and Licensing Librarian at the Massachusetts
`
`Institute of Technology (“MIT”) Libraries, 7'? Massachusetts Avenue, Building
`
`l4E-210, Cambridge, Massachusetts 02139.
`
`2.
`
`I am over 18 years of age and am competent to make this Declaration.
`
`I make this
`
`Declaration based on my own personal knowledge, based on my knowledge and
`
`review of the business records and practices of the MIT Libraries, based on
`
`conversations with other library staff, and based on the notes and records of
`
`Marilyn McSweency who prepared Declarations until her retirement in 2016.
`
`3.
`
`I have been employed at MIT since 2016.
`
`4. Through the actions described in paragraph 2,
`
`I have become knowledgeable
`
`about the MIT Libraries’ normal business practices with respect to how MIT
`
`receives, catalogs, indexes, shelves, and makes available to the public books and
`
`periodicals.
`
`700788.vl
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 1
`Petitioner Microsoft Corporation - EX. 1065, p. 1
`
`
`
`5. Attached as Exhibit A to this Declaration is a true and accurate copy of the
`
`catalog record from the MIT Libraries’ online catalog system (known as the
`
`Barton Catalog) for the book titled “Splash 2: FPGAs in a Custom Computing
`
`Machine” edited by Duncan A. Buell, Jeffrey M. Arnold, and Walter J. Kleinfeld,
`
`and published by IEEE Computer Society Press (“Splash 2”). This is a record
`
`that MIT maintains in the ordinary course of its regular activities.
`
`6. Attached as Exhibit B to this Declaration is a true and accurate copy of the
`
`catalog record in MARC tags format from the Barton Catalog for Splash 2. This is
`
`a record that MIT maintains in the ordinary course of its regular activities.
`
`7. Attached as Exhibit C to this Declaration is a true and accurate copy of the cover,
`
`title pages, copyright page, table of contents and back cover of Splash 2. Splash
`
`2, which totals 205 pages,
`
`is available in its entirety from the MIT Libraries.
`
`Splash 2 is a record that MIT maintains in the ordinary course of its regular
`
`activities.
`
`3. Splash 2 has an MIT Libraries date stamp of “AUG 8 1996,” indicating that the
`
`MIT Libraries received this book On August 8, 1996.
`
`9. Splash 2 has a cataloguing date of October 3, 1996 (shown as 961003 in line
`
`number 910 of Exhibit B), indicating it was entered into OCLC, the national
`
`bibliographic utility in which MIT does its cataloging, on October 3, 1996.
`
`10. One to three business days after a book receives a cataloguing date, a record of its
`
`existence would have been visible in the OCLC database and the Barton Catalog.
`
`11. The Barton Catalog is available online to any user of the World Wide Web. Prior
`
`to the creation of the Web, access to the records in the Barton Catalog was limited
`
`700mm
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 2
`Petitioner Microsoft Corporation - EX. 1065, p. 2
`
`
`
`to peOple who were on the MIT campus or otherwise had access to the OCLC
`
`database.
`
`12. Based on the practices in place at the time, Splash 2 would have appeared in a
`
`relevant Barton Catalog search conducted one to three business days after October
`
`3, 1996.
`
`13. From June 1995 until July 2001,
`
`the Barton Catalog allowed for keyword
`
`searching for words in the book title and subject headings. From July 2001 to the
`
`present, the Barton Catalog has allowed keyword searching for all fields in the
`
`Barton Catalog record. Exact author and title searching has always been available.
`
`14. After the cataloguing date, a book undergoes a process of being labeled and
`
`moved to a shelf of the MIT Libraries. This process typically takes one to two
`
`weeks. According to MIT’s normal business practice, Splash 2 would have been
`
`displayed on a shelf of the MIT Libraries no later than October 18, 1996.
`
`15. Once a book is on a shelf of the MIT Libraries it is available to be viewed within
`
`the MIT Libraries by any member of the public or requested via Interlibrary Loan.
`
`16. To the best of my knowledge and that of current MIT employees, unless stated
`
`otherwise, the above statements are descriptions of normal business practices at
`
`the MIT Libraries from at least the beginning of 1995 and through the present.
`
`700788.“
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 3
`Petitioner Microsoft Corporation - Ex. 1065, p. 3
`
`
`
`I declare under penalty of perjury that the foregoing is true and correct. Executed on
`
`June Z_'1—, 2018, at Cambridge, Massachusetts.
`
`
`
`700?88.vl
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 4
`Petitioner Microsoft Corporation - Ex. 1065, p. 4
`
`
`
`
`
`EXHIBIT A
`EXHIBIT A
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 5
`Petitioner Microsoft Corporation - EX. 1065 , p. 5
`
`
`
`MIT Libraries' catalog - Barton - Full Catalog - Full Record
`
`http://library.mit.edu/F/IV7TPRU96JC92IAMXSSJFGS7AQHDHXNV...
`
`Search Full Catalog:
` • Basic
` • Advanced
`
`Search only for:
` • Conferences
` • E-resources
`
` • Journals
` • MIT Theses
`
`• Reserves
`• more...
`
`• Your Account
`• Help with Your Account
`
`• Your Bookshelf
`• Previous Searches
`
`MIT Libraries
`
`Other Catalogs
`
`Help
`
`Full Record
`
`Permalink for this record: http://library.mit.edu/item/000791622
`
`Results List | Add to Bookshelf | Save/Email
`
`Choose
`format:
`
`Standard | Citation |
`
`MARC
`tags
`
`Record 6 out
`of 6
`
`Title (cid:54)(cid:83)(cid:79)(cid:68)(cid:86)(cid:75)(cid:3)(cid:21)(cid:3)(cid:29)(cid:98)(cid:41)(cid:51)(cid:42)(cid:36)(cid:86)(cid:3)(cid:76)(cid:81)(cid:3)(cid:68)(cid:3)(cid:70)(cid:88)(cid:86)(cid:87)(cid:82)(cid:80)(cid:3)(cid:70)(cid:82)(cid:80)(cid:83)(cid:88)(cid:87)(cid:76)(cid:81)(cid:74)(cid:3)(cid:80)(cid:68)(cid:70)(cid:75)(cid:76)(cid:81)(cid:72)(cid:3)(cid:18)(cid:98)Duncan(cid:3)(cid:36)(cid:17)(cid:3)Buell(cid:15)(cid:3)(cid:45)(cid:72)(cid:73)(cid:73)(cid:85)(cid:72)(cid:92)(cid:3)(cid:48)(cid:17)(cid:3)(cid:36)(cid:85)(cid:81)(cid:82)(cid:79)(cid:71)(cid:15)(cid:3)(cid:58)(cid:68)(cid:79)(cid:87)(cid:72)(cid:85)(cid:3)(cid:45)(cid:17)
`(cid:46)(cid:79)(cid:72)(cid:76)(cid:81)(cid:73)(cid:72)(cid:79)(cid:71)(cid:72)(cid:85)(cid:15)(cid:3)(cid:72)(cid:71)(cid:76)(cid:87)(cid:82)(cid:85)(cid:86)(cid:17)
`Shelf Access (cid:41)(cid:76)(cid:81)(cid:71)(cid:3)(cid:76)(cid:87)(cid:3)(cid:76)(cid:81)(cid:3)(cid:87)(cid:75)(cid:72)(cid:3)(cid:79)(cid:76)(cid:69)(cid:85)(cid:68)(cid:85)(cid:92)(cid:18)(cid:53)(cid:72)(cid:84)(cid:88)(cid:72)(cid:86)(cid:87)(cid:3)(cid:76)(cid:87)(cid:72)(cid:80)
`Shelf Location (cid:37)(cid:68)(cid:85)(cid:78)(cid:72)(cid:85)(cid:3)(cid:47)(cid:76)(cid:69)(cid:85)(cid:68)(cid:85)(cid:92)(cid:98)(cid:16)(cid:98)(cid:54)(cid:87)(cid:68)(cid:70)(cid:78)(cid:86)(cid:98)(cid:95)(cid:98)(cid:52)(cid:36)(cid:26)(cid:25)(cid:17)(cid:27)(cid:17)(cid:54)(cid:25)(cid:24)(cid:17)(cid:37)(cid:27)(cid:23)(cid:3)(cid:20)(cid:28)(cid:28)(cid:25)
`
`Published (cid:47)(cid:82)(cid:86)(cid:3)(cid:36)(cid:79)(cid:68)(cid:80)(cid:76)(cid:87)(cid:82)(cid:86)(cid:15)(cid:3)(cid:38)(cid:68)(cid:79)(cid:76)(cid:73)(cid:17)(cid:3)(cid:29)(cid:98)(cid:44)(cid:40)(cid:40)(cid:40)(cid:3)(cid:38)(cid:82)(cid:80)(cid:83)(cid:88)(cid:87)(cid:72)(cid:85)(cid:3)(cid:54)(cid:82)(cid:70)(cid:76)(cid:72)(cid:87)(cid:92)(cid:3)(cid:51)(cid:85)(cid:72)(cid:86)(cid:86)(cid:15)(cid:98)(cid:70)(cid:20)(cid:28)(cid:28)(cid:25)(cid:17)
`Description (cid:91)(cid:76)(cid:89)(cid:15)(cid:3)(cid:21)(cid:19)(cid:24)(cid:3)(cid:83)(cid:17)(cid:3)(cid:29)(cid:98)(cid:76)(cid:79)(cid:79)(cid:17)(cid:3)(cid:30)(cid:98)(cid:21)(cid:25)(cid:3)(cid:70)(cid:80)(cid:17)
`Format (cid:37)(cid:82)(cid:82)(cid:78)
`Bibliography (cid:44)(cid:81)(cid:70)(cid:79)(cid:88)(cid:71)(cid:72)(cid:86)(cid:3)(cid:69)(cid:76)(cid:69)(cid:79)(cid:76)(cid:82)(cid:74)(cid:85)(cid:68)(cid:83)(cid:75)(cid:76)(cid:70)(cid:68)(cid:79)(cid:3)(cid:85)(cid:72)(cid:73)(cid:72)(cid:85)(cid:72)(cid:81)(cid:70)(cid:72)(cid:86)(cid:3)(cid:11)(cid:83)(cid:17)(cid:3)(cid:20)(cid:28)(cid:19)(cid:16)(cid:21)(cid:19)(cid:19)(cid:12)(cid:3)(cid:68)(cid:81)(cid:71)(cid:3)(cid:76)(cid:81)(cid:71)(cid:72)(cid:91)(cid:17)
`Subject (cid:54)(cid:83)(cid:79)(cid:68)(cid:86)(cid:75)(cid:3)(cid:21)(cid:3)(cid:11)(cid:38)(cid:82)(cid:80)(cid:83)(cid:88)(cid:87)(cid:72)(cid:85)(cid:12)
`(cid:40)(cid:79)(cid:72)(cid:70)(cid:87)(cid:85)(cid:82)(cid:81)(cid:76)(cid:70)(cid:3)(cid:71)(cid:76)(cid:74)(cid:76)(cid:87)(cid:68)(cid:79)(cid:3)(cid:70)(cid:82)(cid:80)(cid:83)(cid:88)(cid:87)(cid:72)(cid:85)(cid:86)(cid:98)(cid:16)(cid:16)(cid:98)(cid:39)(cid:72)(cid:86)(cid:76)(cid:74)(cid:81)(cid:3)(cid:68)(cid:81)(cid:71)(cid:3)(cid:70)(cid:82)(cid:81)(cid:86)(cid:87)(cid:85)(cid:88)(cid:70)(cid:87)(cid:76)(cid:82)(cid:81)(cid:17)
`Other Author Buell(cid:15)(cid:3)Duncan(cid:3)(cid:36)(cid:17)
`(cid:36)(cid:85)(cid:81)(cid:82)(cid:79)(cid:71)(cid:15)(cid:3)(cid:45)(cid:72)(cid:73)(cid:73)(cid:85)(cid:72)(cid:92)(cid:3)(cid:48)(cid:17)
`(cid:46)(cid:79)(cid:72)(cid:76)(cid:81)(cid:73)(cid:72)(cid:79)(cid:71)(cid:72)(cid:85)(cid:15)(cid:3)(cid:58)(cid:68)(cid:79)(cid:87)(cid:72)(cid:85)(cid:3)(cid:45)(cid:17)
`Other Title (cid:54)(cid:83)(cid:79)(cid:68)(cid:86)(cid:75)(cid:3)(cid:87)(cid:90)(cid:82)(cid:17)
`ISBN (cid:19)(cid:27)(cid:20)(cid:27)(cid:25)(cid:26)(cid:23)(cid:20)(cid:22)(cid:59)(cid:3)(cid:11)(cid:83)(cid:68)(cid:83)(cid:72)(cid:85)(cid:12)
`Local System Number (cid:19)(cid:19)(cid:19)(cid:26)(cid:28)(cid:20)(cid:25)(cid:21)(cid:21)
`
`Basic Search of Full Catalog
`Search type:
`
`Search for:
`
`1 of 2
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 6
`6/11/2018 4:36 PM
`
`
`
`MIT Libraries' catalog - Barton - Full Catalog - Full Record
`
`http://library.mit.edu/F/IV7TPRU96JC92IAMXSSJFGS7AQHDHXNV...
`
`Barton Questions: Ask Us! | Contact Us
`Massachusetts Institute of Technology
`77 Massachusetts Avenue, Cambridge, MA 02139-4307 USA
`
`© 2003 Massachusetts Institute of Technology
`
`2 of 2
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 7
`6/11/2018 4:36 PM
`
`
`
`
`
`EXHIBIT B
`EXHIBIT B
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 8
`Petitioner Microsoft Corporation - EX. 1065 , p. 8
`
`
`
`MIT Libraries' catalog - Barton - Full Catalog - Full Record
`
`http://library.mit.edu/F/IV7TPRU96JC92IAMXSSJFGS7AQHDHXNV...
`
`Search Full Catalog:
` • Basic
` • Advanced
`
`Search only for:
` • Conferences
` • E-resources
`
` • Journals
` • MIT Theses
`
`• Reserves
`• more...
`
`• Your Account
`• Help with Your Account
`
`• Your Bookshelf
`• Previous Searches
`
`MIT Libraries
`
`Other Catalogs
`
`Help
`
`Full Record
`
`Permalink for this record: http://library.mit.edu/item/000791622
`
`Results List | Add to Bookshelf | Save/Email
`
`Choose
`format:
`
`Standard | Citation |
`
`MARC
`tags
`
`Record 6 out
`of 6
`FMT
`BK
`LDR
`01000cam 2200301 a 45q0
`003
`MCM
`005
`20010609000235.0
`008
`961003s1996 caua b 001 0 eng
`010
`|a 95047397
`020
`|a 081867413X (paper)
`035
`|a MITb10791622
`035
`|a (OCoLC)33439519
`040
`|a DLC |c DLC |d C#P |d MYG
`05000 |a QA76.8.S65 |b B84 1996
`08200 |a 004.2/2 |2 20
`24500 |a Splash 2 : |b FPGAs in a custom computing machine / |c Duncan A. Buell, Jeffrey M. Arnold, Walter J. Kleinfelder,
`editors.
`2463 |a Splash two
`260
`|a Los Alamitos, Calif. : |b IEEE Computer Society Press, |c c1996.
`300
`|a xiv, 205 p. : |b ill. ; |c 26 cm.
`504
`|a Includes bibliographical references (p. 190-200) and index.
`650 0 |a Splash 2 (Computer)
`650 0 |a Electronic digital computers |x Design and construction.
`7001 |a Buell, Duncan A.
`7001 |a Arnold, Jeffrey M.
`7001 |a Kleinfelder, Walter J.
`CAT
`|a CONV |b 00 |c 20010620 |l MIT01 |h 1544
`CAT
`|a lti0904 |b 00 |c 20090523 |l MIT01 |h 2240
`049
`|a MYGG
`910
`|a tn961003
`949
`|a e |p 39080013873036
`PST0 |0 Z30 |1 000791622000010 |b ENG |c STACK |o BOOK |d 01 |y 00000 |f N |r MIT60-000797503 |n 0 |h
`QA76.8.S65.B84 1996 |a MCM |3 Book |4 Barker Library |5 Stacks |6 60 Day Loan |p Avail
`LDR
` nx 22 zn 4500
`008
`0106230u 0 4 uu 1
`004
`000791622
`8520 |a MCM |b ENG |c STACK |h QA76.8.S65.B84 1996 |z
`001
`000791622
`SFX01 |s 0-0-0-7-9-1-6-2-2 |l MIT01 |9 000 |z ~~~~~~~~~ |p Avail |f 000
`
`1 of 2
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 9
`6/11/2018 4:37 PM
`
`
`
`MIT Libraries' catalog - Barton - Full Catalog - Full Record
`
`http://library.mit.edu/F/IV7TPRU96JC92IAMXSSJFGS7AQHDHXNV...
`
`SYS
`
`000791622
`
`Basic Search of Full Catalog
`Search type:
`
`Search for:
`
`Barton Questions: Ask Us! | Contact Us
`Massachusetts Institute of Technology
`77 Massachusetts Avenue, Cambridge, MA 02139-4307 USA
`
`© 2003 Massachusetts Institute of Technology
`
`2 of 2
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 10
`6/11/2018 4:37 PM
`
`
`
`EXHIBIT C
`EXHIBIT C
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 11
`Petitioner Microsoft Corporation - EX. 1065 , p. 11
`
`
`
`
`
`T LIBRARIES
`
`IIHIHlll|||l||||l||iii|ll||l||||||||||||l||1||l|||||l|||ll||l|
`
`3 9080 01367 3036_
`
`Splash 2
`
`FPGAs in a Custom Computing Machine
`
`
`
`Duncan A. Buell
`
`Jellney M. Arnold
`
`Walter J. Kleinlolden
`
`IEEE
`
`SOYEARS OF SERVICE -1 946-1 9%
`
`
`
`@ C;—————0MPUTERSOCIETY
`
`® a:suaoirgsgoissag:nam
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 12
`Petitioner Microsoft Corporation - EX. 1065, p. 12
`
`
`
`
`
`
`—
`
`..
`
`,7
`
`_ .
`
`,
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 13
`Petitioner Microsoft Corporation - EX. 1065, p. 13
`
`
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 14
`_
`Petitioner Microsoft Corporation - EX. 1065, p. 14'
`——__#
`
`
`
`
`
` Petitioner Microsoft Corporation - EX. 1065, p. 15
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 15
`
`
`
`
`
`Splash 2
`FPGAs in a Custom
`Computing Machine
`
`___-*—__
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 16
`Petitioner Microsoft Corporation - EX. 1065, p. 16
`__4
`
`
`
`
`
`
`
`the Xilinx logo. XC3090. XC4UIO. XBLOX. XACT, LCA.
`Xilinx,
`and Configurable Logic Cell are trademarks of Xilinx. Inc.
`
`CM-2 and Paris are trademarks of Thinking Machines Corporation.
`VMEbus is a trademark of Motorola Corporation.
`SPARC and SPARCstation are trademarks of SPARC International.
`Inc. Products bearing a SPARC‘ trademark are based on an architec—
`ture developed by Sun Microsystems. Inc. SPARCstation is licensed
`exclusively to Sun Microsystems, Inc.
`
`UNIX is a trademark of UNIX System Laboratories.
`Sun. Sun Workstation. SunOS. and SBus are trademarks of Sun Mi—
`crosystems. Inc.
`
`Design Compiler and FPGA Compiler are trademarks of Synopsys.
`Inc.
`
`DEC is a trademark of Digital Equipment Ct'rrporation.
`Verilog is a trademark of Cadence Design Systems. Inc.
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 17
`Petitioner Microsoft Corporation - EX. 1065, p. 17
`
`
`
`
`
`LSplash 2/
`
`FPGAs in a Custom
`Computing Machine
`
`Duncan A. Buell
`
`Jeffrey M. Arnold
`Walter J. Kleinfelder
`Editors
`
`Centerfor Comparing Sciences
`Brmrir’. Marylin-rd
`
`IEEE Computer Society Press
`Los Alamitos, California
`
`Washington
`
`0
`
`Brussels
`
`0
`
`Tokyo
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 18
`Petitioner Microsoft Corporation - EX. 1065, p. 18
`_
`
`
`
`Library of Congress Cataloging-in-Publicatlon Data
`
`‘
`Buall. Duncan A.
`Splash 2: FPGAs in a custom computing machine I Duncan A. Buell.
`Jeifrey M. Arnold. Walter J. Kleinfelder.
`.
`p.
`cm.
`Includes bibliographical references and Index.
`‘
`tSBN 0-8136-7413-X
`.
`_
`.
`1. Spash 2 (Computer)
`2. Electronic digital computers—Desugn
`and construction.
`I. Arnold. Jetirey M.
`II. Kleinfelder. Walter J.
`Ill. Title.
`0A76.8.865884
`004.2 ' 2—d020
`
`1996
`
`95-47397
`
`ClP
`
`
`IEEE Computer Society Press
`10662 Los Vaqueros Circle
`
`@ P.O. Box 3014
`
`Los Alamitos. CA 907204264
`
`Copyright © I996 by The Institute of Electrical and Electronics Engineers. Inc. All rights reserved.
`
`Copyright and Reprint Permfsri'unr: Abstracting is permitted with credit to the source. Libraries are permitted
`to photocopy isolated pages beyond the limits of US copyright law. for private use of their patrons. Other
`copying. reprint. or republication requests should be addressed to:
`iEEE Copyrights Manager. IEEE Service
`Center. 445 Hoes Lane. PO. Box 1331. Piscatawny. NJ 088554331.
`
`IEEE Computer Society Press Order Number BP07413
`
`Library of Congress Number 95—4739?
`[SEN 0-8186-7413-X
`
`IEEE Computer Society Press
`Customer Service Center
`Illofiz Lox Vaquerox Circle
`PI). Box 3014
`[.05 Alumnus. CA 907204264
`Tel; He'll-1782178380
`Fax: +|71|4782174o41
`Email: cxhooksGr‘competercrg
`
`Additional copies may be ordered frmii.
`
`IEEE Service Center
`445 Hoes Lane
`PU. Box 133]
`Piscataway.N168855-133]
`Tel: +1-9(]8~981-1393
`Fax: +l-908-981-966'l
`mis.cusL~ierv@cornputer.org
`
`lEEE Computer Society
`13, Avenue tie i'Aquilon
`8.1200 Bmsuels
`BELGIUM
`Tel; +32-2—1’70-2l98
`Fax: +32-2-‘l70—8505
`eurti.tifc@cotnputer.org
`
`IEEE Computer Society
`Ooshitnn Building
`249-! Minumi~Aoynma
`Mineto-ku. Tokyo [0?
`JAPAN
`Te]: +8l-3-34U3-M l8
`Fax: +8l‘3-3408-3553
`tokyoofc@compulcr.org
`
`QR 769 8
`
`S G? 3*”
`
`‘
`
`r" .'
`‘
`:5 d 9"
`/ 9 WU
`
`Assistant Publisher: Matt Loeb
`
`Technical Editor: Dharma P. Agrawal
`Acquisitions Assistant: Chery] Smith
`Advertising/Promotions: Tom Fink
`Production Editor: Lisa O'Conner
`Cover Image: Dan Kopetzky. Center for Computing Sciences
`Printed in the United States of America
`
`
`
`F‘
`.
`.
`.
`i
`Petitioner Microsoft Corporation - Ex. 1065, p. 19
`Petitioner-I'Microsoft Corporation - EX. 1065 , p. 19
`
`
`
`
`Contents
`
`
`xi
`
`I
`
`10
`
`PREFACE
`
`1 CUSTOM COMPUTING MACHINES: AN INTRODUCTION
`
`1.]
`
`1.2
`
`Introduction
`
`1
`
`The Context for Splash 2
`
`4
`
`FPGAs. 4
`1.2.1
`1.2.2 Architecture. 5
`
`1.2 3
`
`Programming. 6
`
`2 THE ARCHITECTURE OF SPLASH 2
`
`[Q
`
`2.2
`
`2.3
`
`2.4
`
`2.5
`
`Introduction
`
`10
`
`The Building Blocks
`
`11
`
`The System Architecture
`
`12
`
`Data Paths
`
`13
`
`The Splash 2 Array Board
`
`16
`
`2.5.1
`2.5.2
`2.5.3
`
`The Linear Array. 16
`The Splash 2 Crossbar. 16
`Xiiinx Chip X0 and Broadcast Mode. 17
`
`2.6
`
`The Interface Board and Control Features
`
`1?
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 20
`Petitioner Microsoft Corporation - EX. 1065
`
`
`
`Contents
`
`19
`
`vi
`
`3 HARDWARE IMPLEMENTATION
`
`3.1
`
`3.2
`
`3.3
`
`Introduction
`
`19
`
`Development Board Design
`
`21
`
`Interface Board Design
`
`21
`
`3.3.1
`3.3.2
`
`3.3.3
`3.3.4
`
`DMA Channel. 23
`XL and XR. 23
`
`Interrupts, 24
`Clock, 24
`
`Programming and Readback. 24
`3.3.5
`3.3.6 Miscellaneous Registers, 25
`
`3.4
`
`Array Board Design
`
`25
`
`3.4.1
`3.4.2
`
`Processing Element, 26
`Control Element. 28
`
`External Memory Access, 28
`3.4.3
`3.4.4 Crossbar. 28
`
`Programming and Readback. 29
`3.4.5
`3.4.6 Miscellaneous Registers. 29
`
`4 SPLASH 2: THE EVOLUTION OF A NEW ARCHITECTURE
`
`31
`
`4.1
`
`4.2
`
`4.3
`
`4.4
`
`4.5
`
`4.6
`
`4.7
`
`4.8
`
`4.9
`
`Splash 1
`
`31
`
`Splash 2: Thoughts on a Redesign
`
`34
`
`Programming Language
`
`36
`
`Choice of FPGAs
`
`3?
`
`Choice of Host and Bus
`
`38
`
`Chip-to-ChipInterconnections
`
`39
`
`Multitasking
`
`42
`
`Chip X0 and Broadcast
`
`43
`
`Other Design Decisions
`
`43
`
`5 SOFTWARE ARCHITECTURE
`
`46
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`5.1
`
`5.2
`
`5.3
`
`5.4
`
`Introduction
`
`46
`
`Background
`
`47
`
`VHDL as a Programming Language
`
`49
`
`History and Purpose of VHDL, 50
`5.3.1
`5.3.2 VHDL Language Features. 50
`5.3.3
`Problems with VHDL. 51
`
`Software Environment
`
`51
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 21
`Petitioner Microsoft Corporation - EX. 1065 , p. 21
`
`
`
`
`
`vii
`
`60
`
`Contents
`
`5.5
`
`Programmer's View of Splash 2
`
`55
`
`5.5.1
`5.5.2
`5.5.3
`5.5.4
`
`Programming Process, 55
`Processing Element View. 56
`Interface Board View. 57
`Host View. 57
`
`6 SOFTWARE IMPLEMENTATION
`
`6.1
`
`6.2
`
`Introduction
`
`60
`
`VHDL Environment
`
`60
`
`6.2.1
`6.2.2
`6.2.3
`
`Splash 2 VHDL Library. 61
`Standard Entity Declarations. 61
`Programming Style. 64
`
`6.3
`
`Splash 2 Simulator
`
`66
`
`6.3.1
`
`Structure. 66
`
`Configuring the Simulator. 67
`6.3.2
`Input and Output. 68
`6.3.3
`6.3.4 Crossbar and Memory Models. 68
`6.3.5 Hardware Constraints. 70
`
`6.4
`
`Compilation
`
`70
`
`Logic Synthesis. 70
`6.4.1
`Physical Mapping. 71
`6.4.2
`6.4.3 Debugging Support, 71
`
`6.5
`
`Runtime System 72
`
`6.5.1
`6.5.2
`6.5.3
`
`T2: A Symbolic Debugger. 72
`Runlime Library. 73
`Device Driver. 74
`
`6.6
`
`Diagnostics
`
`75
`
`7 A DATA PARALLEL PROGRAMMING MODEL
`
`77
`
`7.1
`
`7.2
`
`Introduction
`
`78
`
`Data-parallel Bit C 80
`
`7.2.1
`
`7.2.2
`
`dbC Overview. 80
`
`dbC Example. 81
`
`7.3
`
`Compiling from dbC to Splash 2
`
`82
`
`Creating a Specialized SIMD Engine. 83
`7.3.1
`7.3.2 Generic SIMD Code. 84
`
`7.3.3 Generating VHDL. 84
`
`7.4
`
`Global Operations
`
`88
`
`7.4.l
`
`Nearest-Neighbor Communication, 88
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 22
`Petitioner Microsoft Corporation - EX. 1065i p. 22
`
`
`
`
`
`i'u
`
`Contents
`
`viii
`
`Reduction Operations, 89
`7.4.2
`7.4.3 HostfPi-ocessor Communication, 91
`
`7.5
`
`Optimization: Macro Instructions
`
`92
`
`Creating a Macro Instruction, 93
`7.5.1
`7.5.2 Discussion, 94
`
`7.6
`
`7.7
`
`Evaluation: Genetic Database Search
`
`94
`
`Conclusions and Future Work
`
`95
`
`8 SEARCHING GENETIC DATABASES ON SPLASH 2
`
`97
`
`8.1
`
`Introduction
`
`97
`
`8.1.1
`
`Edit Distance, 98
`
`8.1.2 Dynamic Programming Algorithm. 98
`
`8.2
`
`Systolic Sequence Comparison
`
`100
`
`Bidirectional Array, 100
`8.2.1
`8.2.2 Unidirectional Array. 103
`
`8.3
`
`Implementation
`
`104
`
`8.3.1 Modular Encoding, 105
`8.3.2 Configurable Parameters. 106
`8.3.3
`Bidirectional Array. 107
`8.3.4 Unidirectional Array, 107
`
`8.4
`
`8.5
`
`8.6
`
`Benchmarks
`
`107
`
`Discussion
`
`108
`
`Conclusions
`
`108
`
`9
`
`TEXT SEARCHING ON SPLASH 2
`
`170
`
`9.1
`
`9.2
`
`9.3
`
`9.4
`
`9.5
`
`9.6
`
`Introduction
`
`110
`
`The Text Searching Algorithm 111
`
`Description of the Single-Byte Splash Program 113
`
`Timings, Discussion
`
`1 14
`
`Outline of the 16-bit Approach
`
`115
`
`Conclusions
`
`1 16
`
`10 HNGERPRINT MATCHING ON SPLASH 2
`
`117
`
`10.1
`
`Introduction
`
`117
`
`10.2
`
`Background
`
`120
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 23
`Petitioner Microsoft Corporation - EX. 1065, p. 23
`
`
`
`
`Contents
`
`ix
`
`10.2.1 Pattern Recognition Systems. 121
`10.2.2 Terminology. 122
`10.2.3 Stages in AFIS. 123
`
`Splash 2 Architecture and Programming Models
`
`125
`
`Fingerprint Matching Algorithm 125
`
`10.4.1 Minutia Matching. 126
`10.4.2 Matching Algorithm. 127
`
`10.3
`
`10.4
`
`10.5
`
`Parallel Matching Algorithm 128
`
`10.5.1 Preprocessing on the Host. 131
`10.5.2 Computations on Splash. 132
`10.5.3 VHDL Specification for X0. 133
`
`10.6
`
`Simulation and Synthesis Results
`
`134
`
`10.?
`
`Execution on Splash 2
`
`137
`
`10.7.1 User Interface. 137
`10.7.2 Performance Analysis. 137
`
`10.8
`
`Conclusions
`
`139
`
`II HIGH-SPEED IMAGE PROCESSING WITH SPLASH 2
`
`141
`
`l 1.1
`
`Introduction
`
`141
`
`11.2
`
`11.3
`
`11.4
`
`11.5
`
`The VTSplash System 142
`
`Image Processing Terminology and Architectural Issues
`
`143
`
`Case Study: Median Filtering
`
`150
`
`Case Study: Image Pyramid Generation
`
`153
`
`11.5.1 Gaussian Pyramid. 154
`11.5.2 Two Implementations for Gaussian Pyramid on Splash 2. 155
`1 1.5.3 The Hybrid Pipeline Gaussian Pyramid Structure. 157
`11.5.4 The Laplacian Pyramid. 157
`11.5.5 Implementation of the Laplacian Pyramid on Splash 2. 159
`
`l 1.6
`
`Performance
`
`159
`
`l 1.7
`
`Summary
`
`163
`
`12 THE PROMISE AND THE PROBLEMS
`
`1'66
`
`12.1
`
`Some Bottom-Line Conclusions
`
`166
`
`12.1.] High Bandwidth 110 Is a Must. 166
`12.1.2 Memory 13 21 Must. 167
`12.1.3 Programming 15 Possible. and Becoming More So. 168
`12.1.4 The Programming Environment Is Crucial. 168
`
`12.2
`
`To Where from Here?
`
`169
`
`.
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 24
`Petitioner Microsoft Cogoration - EX. lOfiil il iii
`
`
`
`l
`
`x
`
`
`
`12.3
`
`If Not Splash 3. Then What?
`
`171
`
`12.3.1 Architectures, 172
`12.3.2 Custom Processors. 173
`12.3.3 Languages, 174
`
`12.4
`
`The “Killer” Applications
`
`177
`
`12.5
`
`Final Words
`
`178
`
`A SPLASH 2 DEVELOPMENT—THE PROJECT MANAGER’S
`SUMMARY
`
`8 AN EXAMPLE APPLICATION
`
`REFERENCES
`
`Contents
`
`179
`
`136
`
`1 90
`
` , i
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 25
`Petitioner Microsoft Corporation - EX. 1065, p. 25
`
`
`
`Splash 2
`FPGAs in a Custom Computing Machine
`edited by Duncan A. Buefl, Jeffrey M. Arnold, and Walter J. Kleinfelder
`
`Details the complete Splash 2 project—the hardware and software sys—
`tems, their architecture and implementation, and the design process by
`which the architecture evolved from an earlier version machine. In addi-
`tion to the description of the machine, this book explains why Splash 2
`was en‘gineered. It illustrates several applications in detail, allowing you
`to gain an understanding of the capabilities and the limitations of this
`kind of computing device.
`
`it is part of a
`The Splash 2 program is significant for two reasons. First,
`complete computer system that achieves supercomputer like perfor-
`mance on a number of different applications. The second significant
`aspect is that this large system is capable of performing real computa—
`tions on real problems. In order to understand what happens when the
`application programmer designs
`the processor architecture of
`the
`machine that executes his programs, it is necessary to see the system as
`a whole. This book looks ill-depth at one of the handful of data points
`in the design space of this new kind of machine.
`
`Contents:
`
`0 Custom Computing Machines: An Introduction
`I The Architecture of Splash 2
`0 Hardware Implementation
`0
`Splash 2: The Evolution of a New Architecture
`0
`Software Architecture
`
`Software Implementation
`0
`0 A Data Parallel Programming Mode]
`0
`Searching Genetic Databases on Splash 2
`0
`Text Searching on Splash 2
`0
`Fingerprint Matching on Splash 2
`0 High—Speed Image Processing with Splash 2
`0 The Promise and the Problems
`
`0 An Example Application
`
`69
`
`Published by the IEEE Computer Society Press
`10662 Los Vaqueros Circle
`R0. Box 3014
`
`LosAlamitos, CA 90720-1314
`
`IEEEComputerSocietyPressOrderNumberBP07413
`
`Library of Congress Number 95—47397
`ISBN 0-8186—7413—X
`
`
`
`133“ ”'5155'7H3 "X
`9 0 0 0 0 >
`
`" II“I“H "I
`
`9 780818 674136
`
`Petitioner Microsoft Corporation - Ex. 1065, p. 26
`Petitioner Microsoft Corporation - EX. 1065, p. 26
`_¥ #—
`
`