Phil Koopman Personal Information
Philip Koopman
Hamershlag Hall A-308
Electrical and Computer Engineering
Department
Carnegie Mellon University
Pittsburgh,
PA 15213 USA
e-mail:
Phone/voice mail: +1 (412) 268-5225
Fax: +1 (412) 268-6353
Assistant: Dan Carmelli: +1 (412) 268-3886
Current Pittsburgh weather
Don't forget to practice your
Pittsburghese
before you visit.
Embedded Computing:
The vast majority of the billions of processors manufactured yearly are
incorporated into products other than general-purpose computers. These embedded
systems can have significantly different tradeoffs than general-purpose
computer designs. Issues include interdisciplinary optimization, cost
sensitivity, real-time performance, reliability, safety and life-cycle support.
Over time I am addressing various aspects of embedded computing in my research,
with my current emphasis areas below. I also teach two courses in embedded
systems: 18-348 Embedded System
Engineering (for juniors and seniors); and
18-649 Distributed Embedded
Systems (for graduate students).
Embedded System Security and Survivability:
As embedded sytems are increasingly connected to enterprise systems and the
Internet, security becomes an increasing concern. A common approach to
attempting to provide security to embedded systems is to install some sort of
gateway node to keep attackers out. That looks great on architectural diagrams,
but nobody is really sure what should go in this gateway. We're looking at the
problems that might be encountered in such gateways. Example areas of interest
include the propagation of timing faults (and attacks) across such gateways,
and what types of mechanisms are most suitable for managing traffic that is
exchanged between networks via these gateways.
Embedded networks are typically optimized for periodic, short, and often
safety critical messages. But, they commonly have little or no support for
security functions such as authentication and secrecy. We're looking at ways to
add security mechanisms to embedded control networks under extreme constraints
of bandwidth, message size, and backward compatibility with existing protocols.
Embedded System Safety:
Embedded systems often provide critical functions that must work correctly
and with high reliability. For example, fly-by-wire systems in aircraft have to
work more or less perfectly at all times. (Future drive-by-wire systems in cars
will have similar dependability requirements.) Not all systems are as critical,
but most embedded systems have some functions that just have to be done right.
We are looking at ways to make it easier to deal with safety, especially in
systems where only a small fraction of the overall system functionality is
actually critical. Current work includes finding ways to partially decompose
system-level safety properties into subsystem properties, and creating simple
approaches to improve the safety of unmanned robotic ground vehicles.
Philip Koopman is an Associate Professor at the Carnegie Mellon University
Electrical and Computer Engineering
Department. Additionally, he is the Embedded &
Reliable Information System thrust leader at the CMU
Institute for Complex Engineered Systems,
the Dependable Embedded System thrust leader for the CMU/General Motors
collaborative research laboratory, and a courtesy faculty member of the
Institute for Software Research,
International (ISRI).
Koopman received a Ph.D. in Computer Engineering from Carnegie Mellon
University in 1989 and both a M.Eng. and B.S. in Computer and Systems
Engineering from Rensselaer Polytechnic Institute in 1982.
From 1982 to 1987, he was a U.S. Navy submarine officer. He completed a Pacific
Fleet sea and shipyard tour aboard the
USS Haddock
(nuclear-powered fast
attack submarine) as Sonar and Weapons officer and is qualified in submarine
warfare (gold
dolphins). He earned the
Naval Expeditionary
Medal for participation in the
Cold War and a Naval
Achievement Medal. He was then stationed in Newport, RI at the Trident Command
and Control Systems Maintenance Activity (TRICCSMA), which performs system
integration and lifecycle support for Trident submarine tactical computer
systems.
From 1986 to 1991, he was a partner in WISC Technologies, which designed and
manufactured Forth-based stack computers. The patents for the technology were
licensed to Harris Semiconductor. He then became a Senior Scientist at Harris
Semiconductor, in charge of embedded processor architecture from 1989 to 1991.
He was the architect of the Harris RTX-4000 32-bit processor prototype.
From 1991 to 1995, he was a Principal Research Engineer at
United Technologies Research Center.
There, he worked with embedded computer applications for Otis (elevators),
Pratt & Whitney (jet engines), Norden (RADARs and SONARs), Carrier (HVAC
equipment), UT Automotive (input control electronics and vehicle security), and
Sikorsky (helicopters). He also conducted research on system design
methodologies and embedded CAD tools.
In 1996, Koopman joined the CMU EDRC (now called
ICES) as a Visiting Senior Research
Engineer. In 1997 he joined the Electrical and
Computer Engineering department as a tenure-track Assistant Professor, was
promoted to Associate Professor in July 2001, and was awarded tenure in July
2002.
Koopman has written four books, and is a named inventor on twenty-five U.S.
patents in areas such as embedded CPU design, embedded communications, vehicle
security, and location-aware services. Thus far he has advised or co-advised
21 students, including five students who have been
awarded Ph.D. degrees. He is a member of IFIP WG 10.4 on Dependable
Computing and Fault Tolerance, a Senior Member of the IEEE and a Senior
Member of the ACM. He was the General Chair of the 2008
Dependable Systems and Networks Conference.
So, do you want to know what it's like in industry?
(Of
course these days, it's really only a matter of degree...)
(See also my student thesis page |
Ballista publications |
RoSES publications)
2009:
- Abdallah, A., Feron, E., Hellestrand, G., Koopman, P. & Wolf, W.,
"Hardware/Software Co-Design of Aerospace and Automotive Systems,"
Proc. IEEE, 2009.
- Black, J. & Koopman, P., "System safety as an emergent
property in composite systems," DSN 2009.
- Ray, J. & Koopman, P., "Queue management
mechanisms for embedded gateways," DSN 2009.
- Szilagyi, C. & Koopman, P., "A flexible approach to
embedded network authentication," DSN 2009.
- Maxino, T., & Koopman, P. "The Effectiveness of Checksums for Embedded
Control Networks," IEEE Trans. on Dependable and Secure
Computing, Jan-Mar 2009, pp. 59-72.
- Driscoll, K., Hall, B., Koopman, P., Ray, J., DeWalt, M., Data Network
Evaluation Criteria Handbook, AR-09/24, FAA, 2009.
2008:
- Black, J., & Koopman, P., "Indirect control path analysis
and goal coverage strategies for elaborating system safety goals in composite
systems," PRDC 2008.
- Szilagyi, C. & Koopman, P., "A
flexible approach to embedded network multicast authentication," WESS
2008.
- Koopman, P., DeVale, K. & DeVale, J., "Interface
robustness testing: experiences and lessons learned from the Ballista
Project," In: Kanoun, K. & Spainhower, L., Eds., Dependability
Benchmarking for Computer Systems, IEEE Press, 2008, pp. 201-226.
2007:
- Koopman, P., "Reliability,
Safety, and Security in Everyday Embedded Systems," Latin American
Dependability Conference (LADC-07), Morelia, Mexico, Sept. 26-28, 2007
- Koopman, P., Black, J., Maxino, T., "Position Paper:
Deeply Embedded Survivability," ARO Planning Workshop on Embedded
Systems and Network Security, Raleigh NC, February 22-23, 2007.
2006:
2005:
- Koopman, P., H. Choset, R. Gandhi, B. Krogh, D. Marculescu, P. Narasimhan,
J. Paul, R. Rajkumar, D. Siewiorek, A. Smailagic, P. Steenkiste, D. Thomas, C.
Wang, "Undergraduate
Embedded System Education at Carnegie Mellon," ACM Journal
Transactions on Embedded Computing Systems, Vol 4, No. 3, September 2005.
- Koopman, P., Morris, J. & Narasimhan, P., "Challenges in Deeply
Networked System Survivability," Nato Advanced Research Workshop On
Security and Embedded Systems, August 2005
- Latronico, E. & Koopman, P., "Design Time Reliability
Analysis of Distributed Fault Tolerance Algorithms," DSN05,
June 2005.
- Paulitsch, Morris, Hall, Driscoll, Koopman & Latronico, "Coverage and Use of Cyclic
Redundancy Codes in Ultra-Dependable Systems," DSN05, June 2005
- Morris, J. & Koopman, P., "Representing Design
Tradeoffs in Safety-Critical Systems," ICSE 2005 Workshop on
Architecting Dependable Systems, May 2005
2004:
- Koopman, P., "Embedded System
Security," IEEE Computer, July 2004.
- Shelton, C. & Koopman, P., "Improving System
Dependability with Alternative Functionality," DSN04, June
2004.
- Latronico, E., Miner, P. & Koopman, P., "Quantifying the
Reliability of Proven SPIDER Group Membership Service Guarantees,"
DSN04, June 2004.
- Morris, J., Kroening, D. & Koopman, P., "Fault Tolerance
Tradeoffs in Moving from Decentralized to Centralized Embedded
Systems," DSN04, June 2004.
- Koopman, P. & Chakravarty, T., "Cyclic Redundancy Code (CRC)
Polynomial Selection For Embedded Networks," DSN04, June 2004.
- Martin, C. & Koopman, P., "Representing User
Workarounds As A Component Of System Dependability," PRDC 2004:
10th IEEE Pacific Rim International Symposium on Dependable Computing,
March 3-5, 2004.
- Orna Raz, Rebecca Buchheit, Mary Shaw, Philip Koopman, and Christos
Faloutsos, "Automated
Assistance for Eliciting User Expectations," International Conference
of Software Engineering and Knowledge Engineering, June 2004.
- Orna Raz and Rebecca Buchheit and Mary Shaw and Philip Koopman and Christos
Faloutsos, "Detecting Semantic Anomalies in Truck Weigh-In-Motion Traffic
Data Using Data Mining," Journal of Computing in Civil Engineering,
October 2004.
2003:
- Shelton, C. & Koopman, P., "Using Architectural Properties to
Model and Measure Graceful Degradation," In: de Lemos, R., Gacek, C.,
& Romanovsky, A., Architecting Dependable Systems, Springer-Verlag,
2003.
- Koopman, P. & Hoffman, R., "Work-arounds, make-work, and
kludges," IEEE Intelligent Systems, November/December 2003.
- Latronico, E. & Koopman, P., "A Period-Based Group
Membership Strategy for Nodes of TDMA Networks," FeT03, July
2003.
- Morris, J. & Koopman, P., "Critical Message
Integrity Over A Shared Network," FeT03, July 2003.
- Latronico, E., "Problems Facing
Group Membership Specifications for X-by-Wire Protocols," DSN
2003 student paper, June 2003.
- Morris, J. & Koopman, P., "Software Defect Masquerade
Faults in Distributed Embedded Systems," DSN 2003 FastAbs, June
2003.
- Koopman, P., "Elements of the
self-healing system problem space," Workshop on Architecting
Dependable Systems/WADS03, May 2003.
- Shelton, C., Koopman, P. & Nace, W., "A framework for scalable analysis and design
of system-wide graceful degradation in distributed embedded systems,"
WORDS03, January 2003.
- Orna Raz, Rebecca Buchheit, Mary Shaw, Philip Koopman, and Christos
Faloutsos "Eliciting User Expectations for Data
Behavior via Invariant Templates" Technical report CMU-CS-03-105,
January 2003.
2002:
- Raz, O., Koopman, P., & Shaw, M., "Enabling Automatic Adaptation in Systems with
Under-Specified Elements," 1st Workshop on Self-Healing Systems
(WOSS'02), affiliated with the 10th International Symposium on the
Foundations of Software Engineering (FSE-10), Charleston, South Carolina,
November 2002.
- Koopman, P., "Critical Embedded
Automotive Networks," IEEE Micro, July-August 2002.
- Koopman, P. (ed.), Special Issue on Critical Embedded Automotive
Networks, IEEE Micro, July-August 2002. (Issue is available from:
IEEE Micro
Archives; IEEE Xplore Archives
- DeVale, J. & Koopman, P., "Robust software - no more
excuses," International Conference on Dependable Systems and
Networks (DSN), Washington DC, July 2002
- Koopman, P., "32-bit
cyclic redundancy codes for Internet applications," International
Conference on Dependable Systems and Networks (DSN), Washington DC, July
2002
- Koopman, P. & Madeira, H., "Workshop on Dependability
Benchmarking," International Conference on Dependable Systems and
Networks (DSN), July 2002.
- Koopman, P. & Madeira, H. (eds.), Proceedings on the Workshop on Dependability
Benchmarking, section within International Conference on Dependable
Systems and Networks (DSN) SupplementWashington DC, July 2002.
- Koopman, P., "What's wrong with
fault injection as a dependability benchmark?," Workshop on
Dependability Benchmarking (in conjunction with DSN 2002), Washington DC,
July 2002.
- Raz, O., Koopman, P. & Shaw, M., "Benchmarking semantic availability of dynamic data
feeds," Workshop on Dependability Benchmarking (in conjunction with
DSN 2002), Washington DC, July 2002.
- Raz, O., Shaw, M. & Koopman, P., "Semantic anomaly detection in on-line data
sources," International Conference on Software Engineering
(ICSE), Orlando FL, May 2002.
- Shelton, C., & Koopman, P., "Using Architectural Properties to Model and
Measure System-Wide Graceful Degradation," Workshop on Architecting
Dependable Systems (affiliated with ICSE 2002), May 25 2002 .
- Beveridge, M. & Koopman, P., "Jini Meets Embedded Control Networking: a case
study in portability failure," Seventh IEEE Workshop on
Object-Oriented Real-Time Dependable Systems: WORDS 2002, San Diego,
January 2002.
2001:
- Nace, W. & Koopman, P., "A
Graceful Degradation Framework for Distributed Embedded Systems,"
Workshop on Reliability in Embedded Systems (in conjunction with Symposium
on Reliable Distributed Systems/SRDS-2001), October 2001.
- Shelton, C. & Koopman, P., "Developing a Software Architecture for
Graceful Degradation in an Elevator Control System," Workshop on
Reliability in Embedded Systems (in conjunction with Symposium on Reliable
Distributed Systems/SRDS-2001), October 2001.
- Latronico, B., Martin, C. & Koopman, P., "Analyzing Dependability of Embedded
Systems from the User Perspective," Workshop on Reliability in
Embedded Systems (in conjunction with Symposium on Reliable Distributed
Systems/SRDS-2001), October 2001.
- Latronico, E. & Koopman, P., "Representing Embedded System Sequence
Diagrams As A Formal Language," UML 2001, Toronto Ontario, 3-5
Oct. 2001, pp. 302-316.
- Hoover, C., Hansen, J., Koopman, P. & Tamboli, S., "The Amaranth Framework: policy-based quality of
service management for high-assurance computing," International
Journal of Reliability, Quality, and Safety Engineering, Vol. 8, No. 4,
2001, pp. 1-28.
- DeVale, J. & Koopman, P., "Performance Evaluation of
Exception Handling in I/O Libraries," International Conference on
Dependable Systems and Networks (DSN), July 2001, Göteborg Sweden.
- Pan, J., Koopman, P., Siewiorek, D., Huang, Y., Gruber, R. & Jiang,
M., "Robustness testing
and hardening of CORBA ORB Implementations," International
Conference on Dependable Systems and Networks (DSN) July 2001,
Göteborg Sweden, pp. 141-150.
- Madeira, H. & Koopman, P. "Dependability benchmarking: making choices
in an n-dimensional problem space," Workshop on Evaluating and
Architecting System dependabilitY (EASY), concurrent with Dependable Systems
and Networks (DSN), July 2001, Göteborg Sweden.
- Koopman, P. & Chakravarty, T., "Analysis of the Train Communication Network
Protocol Error Detection Capabilities," http://www.tsd.org/papers/, February
25, 2001.
- Koopman, P. & Kaner, C., "The
problem of embedded software in UCITA and drafts of revised Article
2," UCC Bulletin, 3 parts: February 2001; March 2001; April
2001.
2000:
- Nace, W. & Koopman, P., "A
product family based approach to graceful degradation," DIPES 2000,
8-19 October 2000, Paderborn, Germany.
- Koopman, P. & DeVale, J.,
The
Exception Handling Effectiveness of POSIX Operating Systems, IEEE
Transactions on Software Engineering, Vol. 26, No. 9, September 2000.
(Direct Link)
- Shelton, C. & Koopman, P., "Robustness Testing of the Microsoft Win32
API, International Conference on Dependable Systems and Networks
(DSN), New York City, June 26-28 2000.
1999:
- Cholkar, A. & Koopman, P., "A
Widely Deployable Web-based Distributed Network Simulation Framework using
CORBA IDL-based APIs," Winter Simulation Conference 2000,
December 5-8 1999, Phoenix, AZ, pp. 1587-1594.
- Koopman, P. & Madeira, H., "Dependability
Benchmarking & Prediction: A Grand Challenge Technology Problem,"
1st International Workshop on Real-Time Mission-Critical Systems: Grand
Challenge Problems, Nov. 30, 1999; Phoenix, Arizona USA. 4 pages.
- Hoover, C., Hansen, J., Koopman, P. & Tamboli, S.,"The Amaranth Framework: Probabilistic,
Utility-Based Quality of Service Management for High-Assurance
Computing", IEEE Fourth International High-Assurance Systems
Engineering Symposium (HASE99), IEEE Computer Society Press, Los
Alamitos, CA, Nov. 17-19, 1999, pp. 207-216.
- Fernsler, K. & Koopman, P., "Robustness Testing of a Distributed
Simulation Backplane," ISSRE 99, Boca Raton, FL, Nov. 2-4,
1999, pp. 189-198.
- Pan, J., Koopman, P. & Siewiorek, D., "A Dimensionality Model Approach to Testing and
Improving Software Robustness," Autotestcon99, August
30-September 2, 1999, San Antonio, TX.
- Koopman, P. & DeVale, J., "Comparing the Robustness of POSIX Operating
Systems," Fault Tolerant Computing Symposium, June 1999.
- DeVale, J., Koopman, P. & Guttendorf, D., "The Ballista Software Robustness Testing
Service," Testing Computer Software Conference, June 1999.
1998:
- Koopman, P., "Toward a Scalable
Method for Quantifying Aspects of Fault Tolerance, Software Assurance, and
Computer Security," Post proceedings of the Computer Security,
Dependability, and Assurance: From Needs to Solutions (CSDA'98), 11-13
November 1998, Washington, D.C., pp. 103-131.
- Bayouth, M. & Koopman, P., "Functional Evolution of an Automated Highway
System for Incremental Deployment," Transportation Research
Record, #1651, Paper #981060, pp. 80-88.
- Koopman, P. & Bayouth, M., "Orthogonal Capability Building Blocks for Flexible
AHS Deployment," Journal of Intelligent Transportation
SystemsVol. 4, pp. 1-19, 1998.
- Kropp, N., Koopman, P. & Siewiorek, D., "Automated Robustness Testing of Off-the-Shelf
Software Components," Fault Tolerant Computing Symposium, pp.
230-239, June 23-25, 1998.
- Koopman, P., Tran, E. & Hendrey, G. "Toward Middleware Fault Injection for
Automotive Networks," Fault Tolerant Computing Symposium, pp.
78-79, June 23-25, 1998.
- Koopman, P., "Using CAD Tools for
Embedded System Design: Obstacles Encountered in an Automotive Case
Study," Integrated Computer Aided Engineering, 5(1)
85-94, 1998. (Also,
Tech Report EDRC
05 103 96)
1997:
- Koopman, P., Sung, J., Dingman, C. & Siewiorek, D., "Comparing Operating Systems using
Robustness Benchmarks," Symposium on Reliable Distributed
Systems, Durham NC, October 22-24, 1997, pp. 72-79.
- Tran, E. & Koopman, P., Mission Failure Probability Calculations
for Critical Function Mechanizations in the Automated Highway System,
Technical Report CMU-RI-TR-97-44, Carnegie Mellon University, December
16, 1997. 34 pages.
1996:
- Tracking down Lost Messages and System
Failures Embedded Systems Programming, 9(11), October 1996,
pp. 38-52
- Koopman, P., "Embedded System Design
Issues -- The Rest of the Story", Proceedings of the 1996
International Conference on Computer Design, Austin, October 7-9 1996.
- Koopman, P., "On Being the Bearer of
Bad News" (engineering ethics), The Institute, IEEE, vol. 20,
no. 6, pg. 15, June 1996. Reprinted in Engineering Dimensions,
Professional Engineers of Ontario, January 2000 pp. 25-26.
1995:
- Koopman, P., "A taxonomy of
decomposition strategies based on structures, behaviors, and goals",
1995 Conference on Design Theory and Methodology, Boston, September
1995.
- Gupta, R., Koopman, P. & Wolfe, A.,
"Tutorial on CAD for Digital Embedded Systems", Design
Automation Conference, June 1995.
- Koopman, P. & Upender, B., Time Division Multiple Access without a Bus
Master, Technical Report 9500470, United Technologies Research Center,
1995.
1994:
- Koopman, P., "A preliminary
exploration of optimized stack code generation", Journal of Forth
Applications and Research, 6(4), 1994.
- Upender, B. & Koopman, P., "Communication protocols for embedded
systems", Embedded Systems Programming, 7(11) 46-58,
November 1994.
- Upender, B. & Koopman, P. "Structured
Functional Modeling in SES/workbench," 1994 SES User Group
Conference, Austin TX, 16 pages, April 1994. [presentation only]
1993:
- D'Anniballe, J. & Koopman, P., "Towards execution models of distributed
systems: a case study of elevator design", ICCD Workshop on
Hardware/Software Codesign, Boston, October 1993.
- Upender, B. & Koopman, P., "Embedded Communication Protocol
Options," Proceedings of Embedded Systems Conference 1993,
Santa Clara, pp. 469-480, October 1993; repeated in Proceedings of Embedded
Systems Conference East 1994, Boston, April 1994.
- Koopman, P., "Perils of the PC
Cache", Embedded Systems Programming, 6(5) 26-34, May
1993.
- Koopman, P., "A Brief Introduction to
Forth," ACM SIGplan Notices, vol. 28, no. 3, pp. 357-358, March
1993, (History of Programming Languages HOPL-II preprints issue.)
- Koopman, P., "Stack
Machines," In: Thorson, M. (ed.), "Usenet Nuggets,"
SIGARCH Computer Architecture News, 21(1), pp. 36-37, March 1993.
1992:
- Keown, W., Koopman, P. & Collins, A., "Performance of the Harris RTX 2000 stack
architecture versus the Sun 4 Sparc and the Sun 3 M68020
architectures", Computer Architecture News, 20(3) 45-52,
June 1992.
- Keown, W., Koopman, P. & Collins, A., "Real-Time Performance of the Harris RTX 2000 Stack
Architecture versus the Sun 4 SPARC and the Sun 3 M68020 Architectures with a
Proposed Real-Time Performance Benchmark," Performance Evaluation
Review, May 1992, vol. 19, no. 4, pp. 40-48.
- Koopman, P., Lee, P. & Siewiorek, D., "Cache Behavior of Combinator Graph
Reduction", Transactions on Programming Languages and Systems,
14(2) 265-297, April 1992.
- Koopman, P. & Siewiorek, D., "ICs for workstations", IEEE
Spectrum, 29(4) 52-54, April 1992.
1991:
- Siewiorek, D. & Koopman, P., The
Architecture of Supercomputers: Titan, a case study, Academic Press,
1991.
- Koopman, P., Lee, P. & Siewiorek, D., "Architectural Considerations for Combinator
Graph Reduction," Lee, P. (ed.) Topics In Advanced Language
Implementation, MIT Press, 1991, pp. 369-95.
- Koopman, P. "Some Ideas for Stack
Computer Design," 1991 Rochester Forth Conference, pg. 58, June 1991.
- Koopman, P., "Embedded
control as a path to Forth acceptance," SIGForth90.
- Koopman, P. (ed), SIGForth '90 and SIGForth '91 Conference
Proceedings, ACM Press, 1991.
1990:
- Koopman, P., An Architecture for Combinator
Graph Reduction, Academic Press, 1990.
- Koopman, P., "Testing
Toolkit," Forth Dimensions, vol. 12, no. 3 , pp. 31-32; 41,
September 1990.
- Koopman, P., "Embedded
Control as a Path to Forth Acceptance," SIGForth90, pp. 23-26, 1990.
- Koopman, P., "Heavyweight Tasking," Embedded Systems
Programming, vol. 3, no. 4, pp. 42-52, April 1990.
- Koopman, P. "TIGRE: Combinator
Graph Reduction on the RTX 2000," 1990 Rochester Forth
Conference, pp. 82-86, June 1990.
- Koopman, P. "Architectural
Opportunities for Future Stack Engines," 1990 Rochester Forth
Conference, pp. 79-81, June 1990.
- Koopman, P. & VanNorman, R. "Adding a Third Stack to a Forth
Engine," 1990 Rochester Forth Conference, pp. 150-151, June
1990.
- Koopman, P. "Design Constraints on
Embedded Real Time Control Systems," System Design and Network
Architecture Conference, pp. 71-77, May 8-10, 1990.
- Koopman, P. "Modern Stack Computer
Architecture," System Design and Network Architecture
Conference, pp. 153-164, May 8-10, 1990.
- Koopman, P., Lee, P. & Siewiorek, D., "Cache Performance of Combinator Graph
Reduction", 1990 Int. Conf. on Computer Languages, March 12-15,
1990.
- Koopman, P., "Design Tradeoffs in
Stack Computers," Forth Dimensions, vol. 11, no. 6, pp. 5-9,
March 1990.
1989:
- Koopman, P., Stack
Computers, Ellis Horwood, 1989.
- Koopman, P. & Lee, P., "A Fresh
Look at Combinator Graph Reduction", Proc. of the 1989 SIGPLAN
Conf. on Programming Language Design and Implementation, June 21-23, 1989.
- Koopman, P. & VanNorman, R., "RTX 4000," 1989 Rochester Forth
Conference, pp. 84-86, June 6-10, 1989.
- Lee, P. & Koopman, P., Compiling for
Direct Execution of Combinator Graphs, Ergo report, Carnegie Mellon
University, Pittsburgh, 1989.
1988:
- Koopman, P. & Siewiorek, D., "The
Impact of Rent's Rule on Massive Parallelism", Frontiers of
Massively Parallel Computation, 1988.
- Koopman, P. "32 Bit RTX Chip
Prototype," Journal of Forth Application and Research
(Rochester Forth Conference Proceedings), vol. 5, no. 2, pp. 331-335, 1988.
- Koopman, P., "Fractal Landscapes," Dr. Dobb's Toolbox of
Forth Vol. II, M&T Publishing, pp. 347-356, 1988.
- Koopman, P., "Bresenham Line Drawing Algorithm," Dr. Dobb's
Toolbox of Forth Vol. II, M&T Publishing, pp. 357-365, 1988.
1987:
- Koopman, P., "Writable Instruction
Set Stack Oriented Computers: The WISC Concept," Journal of Forth
Application and Research (Rochester Forth Conference Proceedings), vol. 5,
no. 1, pp. 49-71, 1987.
- Koopman, P., "The WISC Concept,"
BYTE, vol. 12, no. 4, pp. 187-194, April 1987.
- Koopman, P., "Microcoded vs. Hard-Wired
Control," BYTE, vol. 12, no. 1, pp. 235-242, January 1987.
1986:
- Haydon, G., & Koopman, P., "MVP
Microcoded CPU/16: History," Journal of Forth Application and
Research (Rochester Forth Conference Proceedings), vol. 4, no. 2 , pp.
273-276, 1986.
- Koopman, P., & Haydon, G., "MVP
Microcoded CPU/16: Architecture," Journal of Forth Application and
Research (Rochester Forth Conference Proceedings), vol. 4, no. 2, pp.
277-280 1986.
1985:
- Koopman, P., "Redefining
Words," Forth Dimensions, vol. 7, no. 4, pp. 36-37, November
1985.
- Koopman, P., Forth Floating Point, Mountain View Press, 1985.
- #6,647,269; Method and system for
analyzing advertisements delivered to a mobile unit; Hendrey, Tanaka &
Koopman, November 11, 2003.
- #6,542,750; Method and system for
selectively connecting mobile users based on physical proximity; Hendrey,
Tanaka & Koopman, April 1, 2003.
- #6,542,749; Method and system for
connecting proximately located mobile users based on compatible attributes;
Tanaka, Hendrey, Koopman & King, April 1, 2003.
- #6,542,748; Method and system for
automatically initiating a telecommunications connection based on distance;
Hendrey, Koopman, King & Tanaka, April 1, 2003.
- #6,539,232; Method and system for
connecting mobile users based on degree of separation; Hendrey, Tanaka, Koopman
& King, March 25, 2003.
- #5,991,673; Vehicle anti-theft system
including vehicle identification numbers programmed into on-board computers;
Koopman & Carroll, November 23, 1999.
- #5,975,622; Wireless automotive door;
Koopman, November 2, 1999.
- #5,952,937; System and method of
updating communications in a security system; Koopman, Carroll, Grzybowski,
Marshall, September 14, 1999.
- #5,940,002; Security system with
random number remote communication; Finn, Koopman & Carroll, August 17,
1999.
- #5,783,994; Vehicle security system
with combined key fob and keypad anti-driveaway protection; Koopman, Carroll,
Grzybowski & Marshall, Jul. 21, 1998.
- #5,757,923; Method of generating
secret identification numbers; Koopman, May 26, 1998.
- #5,696,828; Random number generating
system and process based on chaos; Koopman, Dec. 9, 1997.
- #5,682,024; Elevator position
determination; Koopman & Finn, Oct. 28, 1997.
- #5,659,159; Elevator level control
system using elevator/landing gap as a reflection duct; Koopman, Aug. 19, 1997.
- #5,649,014; Pseudorandom
composition-based cryptographic authentication process; Koopman, Finn &
LaBarre, Jul. 15, 1997.
- #5,619,575; Pseudorandom
composition-based cryptographic authentication process; Koopman, Finn &
LaBarre, Apr. 8, 1997.
- #5,598,476; Random clock
composition-based cryptographic authentication process and locking system;
LaBarre & Koopman, Jan. 28, 1997.
- #5,535,212; Implicit Token Media
Access Protocol Without Collision Detection; Koopman & Brajczewski, Jul. 9,
1996.
- #5,450,404; Explicit and Implicit
Token Media Access Protocol with Multi-Level Bus Arbitration; Koopman &
Brajczewski, Sep. 12, 1995.
- #5,436,901; Synchronous Time Division
Multiplexing Using Jam-Based Frame Synchronization; Koopman, Jul. 25, 1995.
- #5,398,284; Cryptographic Encoding
Process; Koopman & Finn, Mar. 14, 1995.
- #5,377,270; Cryptographic
Authentication of Transmitted Messages Using Pseudorandom Numbers; Koopman
& Finn, Dec. 27, 1994.
- #5,363,448; Pseudorandom Number
Generation and Cryptographic Authentication; Koopman & Finn, Nov. 8, 1994.
(Also issued as European Patent
EP00706735B1;
Re-issued with new claims as US
#RE36,181)
- #5,053,952; Stack memory based 32-bit
writable instruction set computer having a single data bus; Koopman &
Haydon, Oct. 1, 1991.
- #4,980,821; Stack memory based
writable instruction set computer having a single data bus; Koopman &
Haydon, Dec. 25, 1990.
Philip Koopman: