Indiana University Bloomington

School of Informatics and Computing


Computer Science Program







 Home

 Contacts

 Courses

 Academics

 Careers

 Research

 People

 Calendar

 Facilities

Geoffrey Brown

Professor of Computer Science
Office address: Lindley Hall 330G,
Indiana University, Bloomington IN, 47405 USA
Office phone: 812-855-4207
Department fax: 812-855-4829
Email

Teaching

[C - H]335 Computer Structures
p436 Introduction to Operating Systems
C343 Data Structures and Algorithms
B639 Ensuring Long-term Access to Digital Information
b649 Concurrent Programming Languages for System Design
A major undertaking for the past several years has been the development of a radically redesigned computer structures class (c335) which has as its laboratory component a small robot built from a children's toy Goofy Giggles. The focus of this course is to build a bridge from a (relatively) high-level language (C) to assembly code and its execution by a processor. Course Spec We are currently revising this course to use the ARM7 processor which is widely used in embedded systems such as cell phones.

Research Interests

Digital system design methodology including formal verification, software/hardware co-design, and reconfigurable computing. Digital preservation.
I am exploring the use of off-the-shelf emulation and virtual machine environments to support the digital archiving of documents that require their original (obsolete) software for access. For example the US Government Printing Office began distributing vital statistics on CDROM with embedded proprietary software about 15 years ago - accessing these data requires running the embedded software. To see the current state of our online collection of GPO CDRoms - http://www.cs.indiana.edu/svp/
We've recently performed a study of 200,000 Office documents to determine their resource requirements (fonts, helper applications, etc.) and are undertaking a study with the Koninklijke Bibliotheek (Netherlands National Library) to apply our analysis tools to articles from their archive. The KB is the digital repository for several major scientific publishers.
My work on cross-clock domain protocols has demonstrated that it is possible to quickly verify real-time protocols using an off-the-shelf model checker (SAL) that uses satisfiability-modulo-theories (SMT). Previous efforts utilizing conventional theorem provers required significant human (months vs days) and computer resources (hours vs seconds) than our approach.
Prior to my return to academia in 2003, I spent seven years in industry where I co-led the HP side of the Lx embedded VLIW microprocessor and its software system. This was an HP Laboratories/ST Microelectronics partnership and was the basis for the the ST210, ST220, ST230, and ST231 processors. These processors are embedded in many of ST's consumer electronics chips often with multiple processor instances. For example, there are three of these processors in each STM8000 stm8000.pdf DVD recorder chip. The Lx architecture is also used in digital video recorder chips (stx5524, stx5525, stm8010), set top box decoders (sti5300, sti5301), and in a new series of HD H264 set top box chips as the st231 (stb7100, sti7101, sti7105, sti7109, sti7111, sti7141, stb7200).
I also worked as a software architect for several networking startups, most recently as chief architect of Sockeye Networks. At Sockeye Networks I developed a system for Internet address clustering to support intelligent route optimization. This system allowed Sockeye Networks to save millions of dollars by replacing data purchased by other companies.
My verification work is a continuation of my long history of studying design, verification, and synthesis techniques for digital systems. I performed early and widely cited work on the design of self-stabilizing systems which have the desirable property that, when started in any state, are guaranteed to converge to a desirable state in finite time. My work on the design and verification of multiprocessor cache algorithms, in particular "Lazy Caching" was the subject of a special issue of Distributed Computing. I've also developed techniques to verify hardware synthesis algorithms.

Selected Publications

Digital Preservation

Verification of Cross Clock Domain Protocols

  • G. Brown and L.Pike. "Automated Verification and Refinement for Physical-Layer Protocols", To appear in Formal Aspects of Computing. DOI:10.1007/s00165-010-0149-0.
  • L. Pike, G. Brown and A. Goodloe. "Roll Your Own Test Bed For Embedded Real-Time Protocols: A Haskell Experience", Haskell Symposium, 2009.
  • G. Brown and L. Pike. "Temporal Refinement Using SMT and Model Checking with an Application ot Physical-Layer Protocols", Proceedings of Formal Methods and Models for Codesign (MEMOCODE), 2007.
  • G. Brown. "Verification of a Data Synchronization Circuit For All Time", 6th International Conference on Application of Concurrency to System Design, (ACSD 2006).
  • G. Brown and L. Pike. "Easy Parameterized Verification of Biphase Mark and 8N1 Decoders," International Conference on Tools and Algorithms for the Construction and Analysis of Systems, (TACAS 2006) Lecture Notes in Computer Science 3920. pp. 58-72. http://dx.doi.org/10.1007/11691372
  • G. Brown and L. Pike. ""Easy" Parameterized Verification of Cross Clock-Domain Protocols," Designing Correct Circuits, April 2006.

Embedded System Software

  • B. Pisupati, G. Brown. "File System Interfaces for Embedded Software Development," IEEE International Conference on Computer Design, October 2005, pp. 232-238. pdf file http://dx.doi.org/10.1109/ICCD.2005.57
  • S. Tilak, B. Pisupati, K. Chiu, G. Brown, and N. Abu-Ghazaleh. "A File System Abstraction for Sense and Respond Systems," EESR 05: Proceedings of the 2005 Workshop on End-to-End, Sense-and-Respond Systems, Applications, and Services, June 2005, pp 1-6. pdf file

VLIW Microprocessor

  • P. Faraboschi, G. Brown, J. A. Fisher, G. Desoli, and F. Homewood. "Lx: A Technology Platform for Customizable VLIW Embedded Processing," Proceedings of International Symposium of Computer Architecture, pp. 203-213, June 2000. pdf file http://doi.acm.org/10.1145/339647.339682
  • US 7,779,240. M. Homewood, G. Vondran, G. Brown, P. Faraboschi. System and Method for Reducing Power Consumption in a Data Processor Having a Clustered Architecture, 2010.
  • US 7,337,306. M. Homewood, G. Vondran, G. Brown, and P. Faraboschi. Executing Conditional Branch Instructions in a Data Processor Having a Clustered Architecture, 2008.
  • US 7,143,268. M. Homewood, A. Jarvis, G. Brown, P. Faraboschi, and G. Vondran. Circuit and Method for Instruction Compression and Dispersal in Wide-Issue Processors, 2006.
  • US 6,922,733. M. Homewood, A. Jarvis, A. Starr, G. Brown, P. Faraboschi, and Gary Vondran. System and Method for Encoding Constant Operands in a Wide Issue Processor, 2005. pdf file
  • US 6,691,210. P. Faraboschi, A. Starr, G. Brown, and R. Ford Circuit and Method for Hardware-Assisted Software Flushing of Data and Instruction Caches, 2004. pdf file
  • US 6,829,700. P. Faraboschi, A. Starr, G. Brown, and M. Homewood Circuit and Method for Supporting Misaligned Accesses in the Presence of Speculative Load Instructions, 2004. pdf file

Internet Address Clustering

  • G. Brown. "Internet Address Clustering for Intelligent Route Control." (Unpublished) pdf file
  • G. Brown. "Network Address Space Clustering Employing Topological Groupings, Distance Measuremetns, and Structural Generalization". US Patent application 20040059830. pdf file

Self-Stabilization

Cache Consistency

Hardware Synthesis

  • J. O'Leary, G. M. Brown, and W. Luk. "Verified Compilation of Communicating Processes into Clocked Circuits," Formal Aspects of Computing, vol. 9, pp. 537-559, 1997. pdf file http://dx.doi.org/10.1007/BF01211459
  • G. M. Brown, W. Luk, and J. O'Leary. "Retargeting a Hardware Compiler Using Protocol Converters." Formal Aspects of Computing, vol. 8, pp. 209-237, 1996. http://dx.doi.org/10.1007/BF01211459
  • J. He, G. M. Brown, W. Luk and J. O'Leary. "Deriving Two-phase Modules for a Multi-Target Hardware Compiler," in Designing Correct Circuits, Springer Electronic Workshop in Computing Series, 1996. pdf file

Other

Using the STM32VLDISCOVERY board http://cgi.cs.indiana.edu/ geobrown/stm32



File translated from TEX by TTH, version 3.61.
On 10 Jan 2011, 17:33.








Valid HTML 4.01!

na.edu"