Resume (microprocessor design, FP arith, x86)

Norbert Juffa uunet!iit.com!norbert
Sat Jul 1 15:51:38 PDT 1995


Norbert Juffa                          460 Navaro Way #201
                                       San Jose, CA 95341
                                       Phone: (408)-383-0456 Home
                                              (408)-654-0934 Work

Objective
=========

Seeking a challenging position in microprocessor design with an emphasis 
on x86 or floating-point arithmetic issues.


Work experience
===============

October 1994 - present     Integrated Information Technology, Santa Clara, CA

Worked as a software engineer on a 486 CPU project, with the following
responsibilities:

o Enhancements and bug fixes in 486 FPU microcode, especially the 
   transcendental function microcode. Optimization of FPU microcode with
   regard to speed and ROM-usage. Wrote program to analyse FPU microcode
   line and branch coverage. Reduced FPU testvectors while keeping full
   microcode coverage.
o Completed microcode-level, non-pipelined simulator for 486DX CPU by 
   adding MMU, register file, FPU interface, decoder interface,
   microsequencer and top-level driving code. Written in C. Modules
   are modelled mostly at the behavioral level. Main advantage
   of this simulator is the higher speed versus the fully pipelined, 
   HW like, partly synthesizable simulator, which facilitates much
   faster debugging of the CPU microcode. Participated in debugging
   the microcode.
o Evaluation and selection of a network batch processing system for a
   network of Sun workstations. Responsible for configuration of the 
   system, and interfacing with the vendor.
   
   
June 1993 - December 1993    Integrated Information Technology, Santa Clara, CA

Worked as a software engineer on a 486 CPU project, with the following
responsibilities:

o  Responsible for compatibility research on the 486 FPU. Designed and wrote 
    a complete instruction level model of the 486 FPU in C. Designed and  
    implemented regression tests to check this model against the Intel 486DX. 
    Regression tests use random, table based and algorithmic methods of test 
    vector generation. Also designed and modeled a module (in C) to handle 
    all FPU exceptional cases, such that the module can be synthesized into 
    hardware.
o  Designed and implemented algorithms for the implementation of FPU 
    transcendental functions. Wrote program to generate polynomial and 
    rational approximations used in implementation of the transcendental 
    functions. Wrote program to test accuracy of the transcendental functions. 
o  Participated in design of FPU datapath. Designed and partially wrote a FPU
    simulator at the microcode level. Defined initial FPU microcode format. 
    Wrote microcode for all FPU exception handling, rounding, and basic 
    arithmetic. Modified regression test programs to test FPU microcode level
    simulator versus FPU instruction level simulator.


February 1991 - December 1992                  University of Karlruhe, Germany
    Student research assistant with the Department of Mechanical Enigineering.

October 1989 - February 1990                  University of Karlsruhe, Germany
    Student assistant at the Department of Computer Science.


Education
=========
January 1994 - September 1994                 University of Karlsruhe, Germany 
   Master of Science in Computer Science.  "Diplom-Informatiker"

   Thesis: "Evaluation of the use of FPGAs in Kryptology". Evaluation of
   several cryptographic algorithms with respect to their implementation
   in FPGAs. Implemented FEAL and DES, in a Xilinx 4000 Family FPGA.

February 1993 - June 1993                      University of Karlruhe, Germany

   Thesis: "Efficient Implementation of Very Long Integer Arithmetic
   on Various SPARC CPUs". Done in C and SPARC assembly language.

October 1986 - September 1994                 University of Karlsruhe, Germany

   Student of Computer Science working toward MS degree (there is no BS 
   degree in German universities, and MS degree requires two thesises). 
   Emphasis on Computer Engineering, especially microprocessors, and 
   software engineering.

August 1981 - June 1982           Northwest Senior High School, Cincinnati, OH

   Exchange student senior high school year, finished with High School Diploma.


Publications
============

[1994] Norbert Juffa, "Everything you always wanted to know about math
       coprocessors".
       Electronically published on the Internet. Available as COPRO16A.ZIP
       via anonymous ftp from garbo.uwasa.fi
[1994] Norbert Juffa, "Floating-point arithmetic bibliography".
       Electronically published on the Internet. Available as FPBIBL18.ZIP
       via anonymous ftp from garbo.uwasa.fi
[1994] Replacement Library for Borland-Pascal 7.0, including 80x86 assembly
       language and Pascal source code and test programs.
       Electronically published on the Internet. Available as BPL70N16.ZIP
       via anonymous ftp from garbo.uwasa.fi
[1994] COMPTEST - PC component detection, analysis and performance test.
       Written in Pascal and 80x86 assembly language. Electronically 
       published on the Internet. Available as CTEST260.ZIP via anonymous 
       ftp from garbo.uwasa.fi
[1993] Norbert Juffa, "Performance comparison Intel 386DX, Intel RapidCAD,
       C&T 38600DX, Cyrix 486DLC".
       Electronically published on the Internet. Available as CPUCMP14.ZIP
       via anonymous ftp from garbo.uwasa.fi
[1993] Replacement Library for Turbo-Pascal 6.0, including 80x86 assembly
       language and Pascal source code and test programs.
       Electronically published on the Internet. Available as BPL70N16.ZIP
       via anonymous ftp from garbo.uwasa.fi
[1993] Norbert Juffa: "Mathematicki Koprocesori" (Math Coprocessors). 
       INFOTREND (Croatia), June 1993, pp. 54-60
[1993] Norbert Juffa, "Performance comparison Intel 386DX, Intel RapidCAD,
       C&T 38600DX, Cyrix 486DLC".
       Tribunix Dossier Special No. 4 Benchmarks (France), March 1993,
       pp. 109-116
[1991] Norbert Juffa, "Welcher Typ ist der Co...? Typ-Identifizierung von
       CPU und Coprozessor in MS-DOS-PCs" (Type Identification of CPUs and
       Coprocessor in MSDOS PCs).
       mc (Germany), November 1991, pp. 152-161
[1990] Norbert Juffa, Peter Sierung, "Wege ueber die Mauer. LoadAll --
       Extended Memory im Real Mode des 80286".
       c't (Germany), November 1990, pp. 362-366
[1990] Norbert Juffa, "Jedes Byte hilft. Mehr Speicher fuer NEAT-Rechner".
       (More usable DOS memory for PCs with NEAT chip set).
       mc (Germany), April 1990, pp. 118-132
[1989] Norbert Juffa, "Leinen los fuer schnelle Strings".
       (Fast String Routines)
       Toolbox (Germany), November 1989, pp. 24-27
[1989] Norbert Juffa, "Nachschlag fuer die Treiber"
       Toolbox (Germany), May 1989, pp. 64-67
[1989] Norbert Juffa, "Auf der Jagd nach den Treibern. Die Aufgaben der DOS
       Funktion 52h". (Undocumented DOS Function 52h)
       Toolbox (Germany), July 1989, pp. 28-31
[1989] Norbert Juffa, "Den Druckertreiber 'Print' optimal ausnutzen".
       (How to get the most out of using the PRINT printer spooler).
       Computer Persoenlich (Germany), March 1989, pp. 188
[1988] Norbert Juffa, "Timer programmieren". (Programming of PC timer chip).
       Computer Persoenlich (Germany), July 1988, p. 83
[1988] Norbert Juffa, "PC/XT, PC/AT Refresh manipulieren". (Manipulating
       DRAM Refresh in PCs).
       Chip (Germany), May 1988, p. 196
[1988] Norbert Juffa, "Schnelle Algorithmen fuer Sin und Cos". (Fast
       algorithms for Sin and Cos).
       mc (Germany), May 1988, pp. 105-107




More information about the Numeric-interest mailing list