CA2244337A1 - Encryption processor with shared memory interconnect - Google Patents

Encryption processor with shared memory interconnect Download PDF

Info

Publication number
CA2244337A1
CA2244337A1 CA002244337A CA2244337A CA2244337A1 CA 2244337 A1 CA2244337 A1 CA 2244337A1 CA 002244337 A CA002244337 A CA 002244337A CA 2244337 A CA2244337 A CA 2244337A CA 2244337 A1 CA2244337 A1 CA 2244337A1
Authority
CA
Canada
Prior art keywords
processing
processing elements
secret key
central processor
shared memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002244337A
Other languages
French (fr)
Other versions
CA2244337C (en
Inventor
David E. Jones
Cormac M. O'connell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mosaid Technologies Inc
Original Assignee
Mosaid Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mosaid Technologies Inc filed Critical Mosaid Technologies Inc
Priority to CA2617389A priority Critical patent/CA2617389C/en
Publication of CA2244337A1 publication Critical patent/CA2244337A1/en
Application granted granted Critical
Publication of CA2244337C publication Critical patent/CA2244337C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/5052Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination using carry completion detection, either over all stages or at sample stages only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/722Modular multiplication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/382Reconfigurable for different fixed word lengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49931Modulo N reduction of final result
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Abstract

An encryption chip is programmable to process a variety of secret key and public key encryption algorithms. The chip includes a pipeline of processing elements, each of which can process a round within a secret key algorithm. Data is transferred between the processing elements through dual port memories. A central processing unit allows for processing of very wide data words, from global memory in single cycle operations. An adder circuit is simplified by using plural relatively small adder circuits with sums and carries looped back in plural cycles. Multiplier circuitry can be shared between the processing elements and the central processor by adapting the smaller processing element multipliers for concatenation as a very wide central processor multiplier.
CA002244337A 1998-02-27 1998-07-30 Encryption processor with shared memory interconnect Expired - Fee Related CA2244337C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2617389A CA2617389C (en) 1998-02-27 1998-07-30 Encryption processor with shared memory interconnect

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/032,029 1998-02-27
US09/032,029 US6088800A (en) 1998-02-27 1998-02-27 Encryption processor with shared memory interconnect

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CA2617389A Division CA2617389C (en) 1998-02-27 1998-07-30 Encryption processor with shared memory interconnect

Publications (2)

Publication Number Publication Date
CA2244337A1 true CA2244337A1 (en) 1999-08-27
CA2244337C CA2244337C (en) 2009-01-20

Family

ID=21862723

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002244337A Expired - Fee Related CA2244337C (en) 1998-02-27 1998-07-30 Encryption processor with shared memory interconnect

Country Status (8)

Country Link
US (3) US6088800A (en)
JP (3) JP3979786B2 (en)
KR (1) KR100638189B1 (en)
CA (1) CA2244337C (en)
DE (1) DE19983127T1 (en)
FR (1) FR2778519B1 (en)
GB (1) GB2350218B (en)
WO (1) WO1999044329A2 (en)

Families Citing this family (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
DE19651075A1 (en) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Unit for processing numerical and logical operations, for use in processors (CPU's), multi-computer systems, data flow processors (DFP's), digital signal processors (DSP's) or the like
DE19654595A1 (en) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0 and memory bus system for DFPs as well as building blocks with two- or multi-dimensional programmable cell structures
DE59710317D1 (en) 1996-12-27 2003-07-24 Pact Inf Tech Gmbh METHOD FOR THE INDEPENDENT DYNAMIC RE-LOADING OF DATA FLOW PROCESSORS (DFPs) AND MODULES WITH TWO OR MORE-DIMENSIONAL PROGRAMMABLE CELL STRUCTURES (FPGAs, DPGAs, or the like)
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
GB9707861D0 (en) 1997-04-18 1997-06-04 Certicom Corp Arithmetic processor
EP0938790B1 (en) * 1997-09-16 2007-02-07 Koninklijke Philips Electronics N.V. A method and device for executing a decrypting mechanism through calculating a standardized modular exponentiation for thwarting timing attacks
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (en) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Repairing integrated circuits by replacing subassemblies with substitutes
US6088800A (en) 1998-02-27 2000-07-11 Mosaid Technologies, Incorporated Encryption processor with shared memory interconnect
US6289454B1 (en) * 1998-06-29 2001-09-11 Vlsi Technology, Inc. Memory configuration which support multiple cryptographical algorithms
US6493825B1 (en) * 1998-06-29 2002-12-10 Emc Corporation Authentication of a host processor requesting service in a data processing network
US6513108B1 (en) * 1998-06-29 2003-01-28 Cisco Technology, Inc. Programmable processing engine for efficiently processing transient data
US6851052B1 (en) * 1998-12-10 2005-02-01 Telcordia Technologies, Inc. Method and device for generating approximate message authentication codes
US6347143B1 (en) * 1998-12-15 2002-02-12 Philips Electronics No. America Corp. Cryptographic device with encryption blocks connected parallel
US6920562B1 (en) 1998-12-18 2005-07-19 Cisco Technology, Inc. Tightly coupled software protocol decode with hardware data encryption
WO2000077652A2 (en) 1999-06-10 2000-12-21 Pact Informationstechnologie Gmbh Sequence partitioning in cell structures
US7509486B1 (en) * 1999-07-08 2009-03-24 Broadcom Corporation Encryption processor for performing accelerated computations to establish secure network sessions connections
US7254231B1 (en) * 1999-10-14 2007-08-07 Ati International Srl Encryption/decryption instruction set enhancement
FR2800952B1 (en) * 1999-11-09 2001-12-07 Bull Sa ARCHITECTURE OF AN ENCRYPTION CIRCUIT IMPLEMENTING DIFFERENT TYPES OF ENCRYPTION ALGORITHMS SIMULTANEOUSLY WITHOUT LOSS OF PERFORMANCE
US6870929B1 (en) * 1999-12-22 2005-03-22 Juniper Networks, Inc. High throughput system for encryption and other data operations
US7054445B2 (en) * 2000-03-31 2006-05-30 Vdg, Inc. Authentication method and schemes for data integrity protection
WO2001086467A1 (en) * 2000-05-12 2001-11-15 Fujitsu Limited Data controller and atm controller
DE50115584D1 (en) 2000-06-13 2010-09-16 Krass Maren PIPELINE CT PROTOCOLS AND COMMUNICATION
US7062657B2 (en) * 2000-09-25 2006-06-13 Broadcom Corporation Methods and apparatus for hardware normalization and denormalization
US20020061107A1 (en) * 2000-09-25 2002-05-23 Tham Terry K. Methods and apparatus for implementing a cryptography engine
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US7143289B2 (en) * 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables
US7120254B2 (en) * 2000-10-30 2006-10-10 Geocodex Llc Cryptographic system and method for geolocking and securing digital information
US8472627B2 (en) * 2000-10-30 2013-06-25 Geocodex Llc System and method for delivering encrypted information in a communication network using location indentity and key tables
KR100379122B1 (en) * 2000-11-13 2003-04-08 엘지전자 주식회사 Method for Creating Round Key in Giga Bit Ethernet Switch 128 Bit Block Encrypting Algorithm
DE10061998A1 (en) * 2000-12-13 2002-07-18 Infineon Technologies Ag The cryptographic processor
JP2002182898A (en) 2000-12-14 2002-06-28 Nec Microsystems Ltd Method and circuit for generating integrated value and period function
US6804696B2 (en) * 2000-12-19 2004-10-12 International Business Machines Corporation Pipelining operations in a system for performing modular multiplication
US7305092B2 (en) * 2000-12-19 2007-12-04 Qualcomm Incorporated Method and system to accelerate cryptographic functions for secure e-commerce applications
US6959346B2 (en) * 2000-12-22 2005-10-25 Mosaid Technologies, Inc. Method and system for packet encryption
JP4074057B2 (en) * 2000-12-28 2008-04-09 株式会社東芝 Method for sharing encrypted data area among tamper resistant processors
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7607165B2 (en) 2001-03-09 2009-10-20 The Athena Group, Inc. Method and apparatus for multiplication and/or modular reduction processing
US20020172355A1 (en) * 2001-04-04 2002-11-21 Chih-Chung Lu High-performance booth-encoded montgomery module
US7017064B2 (en) * 2001-05-09 2006-03-21 Mosaid Technologies, Inc. Calculating apparatus having a plurality of stages
US6990199B2 (en) * 2001-06-12 2006-01-24 Corrent Corporation Apparatus and method for cipher processing system using multiple port memory and parallel read/write operations
EP1417566A2 (en) * 2001-06-13 2004-05-12 Zencod S.A. Cryptographic processing accelerator board
ATE557344T1 (en) 2001-06-20 2012-05-15 Krass Maren METHOD AND DEVICE FOR PARTITIONING LARGE COMPUTER PROGRAMS
US20030007636A1 (en) * 2001-06-25 2003-01-09 Alves Vladimir Castro Method and apparatus for executing a cryptographic algorithm using a reconfigurable datapath array
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7403615B2 (en) * 2001-08-24 2008-07-22 Broadcom Corporation Methods and apparatus for accelerating ARC4 processing
JP4787434B2 (en) * 2001-08-24 2011-10-05 富士通コンポーネント株式会社 ENCRYPTION METHOD, COMMUNICATION SYSTEM, DATA INPUT DEVICE
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US7043017B2 (en) * 2001-09-13 2006-05-09 Freescale Semiconductor, Inc. Key stream cipher device
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US6922717B2 (en) * 2001-09-28 2005-07-26 Intel Corporation Method and apparatus for performing modular multiplication
JP4045777B2 (en) * 2001-10-30 2008-02-13 株式会社日立製作所 Information processing device
DE10201449C1 (en) * 2002-01-16 2003-08-14 Infineon Technologies Ag Arithmetic unit, method for performing an operation with an encrypted operand, carry select adder and cryptography processor
AU2003208266A1 (en) 2002-01-19 2003-07-30 Pact Xpp Technologies Ag Reconfigurable processor
EP2043000B1 (en) 2002-02-18 2011-12-21 Richter, Thomas Bus systems and reconfiguration method
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
DE10215771A1 (en) 2002-04-10 2003-11-20 Infineon Technologies Ag Configurable calculator
JP2003317202A (en) * 2002-04-11 2003-11-07 Cis Electronica Industria & Comercio Ltda Magnetic head for magnetic reader
US7941662B2 (en) * 2002-05-31 2011-05-10 Broadcom Corporation Data transfer efficiency in a cryptography accelerator system
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
JP2004078053A (en) 2002-08-22 2004-03-11 Sony Corp Ciphering device
US7451326B2 (en) * 2002-08-26 2008-11-11 Mosaid Technologies, Inc. Method and apparatus for processing arbitrary key bit length encryption operations with similar efficiencies
US7386705B2 (en) * 2002-08-27 2008-06-10 Mosaid Technologies Inc. Method for allocating processor resources and system for encrypting data
AU2003289844A1 (en) 2002-09-06 2004-05-13 Pact Xpp Technologies Ag Reconfigurable sequencer structure
WO2004045135A1 (en) * 2002-11-06 2004-05-27 Sun Microsystems, Inc. System and method for implementing des encryption
US20040086114A1 (en) * 2002-11-06 2004-05-06 Sun Microsystems, Inc. System and method for implementing DES permutation functions
US7000089B2 (en) * 2002-12-20 2006-02-14 International Business Machines Corporation Address assignment to transaction for serialization
US7574604B2 (en) * 2003-03-04 2009-08-11 Sony Corporation Network device registration
US7529368B2 (en) * 2003-04-18 2009-05-05 Via Technologies, Inc. Apparatus and method for performing transparent output feedback mode cryptographic functions
US7925891B2 (en) * 2003-04-18 2011-04-12 Via Technologies, Inc. Apparatus and method for employing cryptographic functions to generate a message digest
US7844053B2 (en) * 2003-04-18 2010-11-30 Ip-First, Llc Microprocessor apparatus and method for performing block cipher cryptographic functions
US7542566B2 (en) * 2003-04-18 2009-06-02 Ip-First, Llc Apparatus and method for performing transparent cipher block chaining mode cryptographic functions
US7519833B2 (en) * 2003-04-18 2009-04-14 Via Technologies, Inc. Microprocessor apparatus and method for enabling configurable data block size in a cryptographic engine
US7529367B2 (en) * 2003-04-18 2009-05-05 Via Technologies, Inc. Apparatus and method for performing transparent cipher feedback mode cryptographic functions
US7900055B2 (en) * 2003-04-18 2011-03-01 Via Technologies, Inc. Microprocessor apparatus and method for employing configurable block cipher cryptographic algorithms
US7536560B2 (en) * 2003-04-18 2009-05-19 Via Technologies, Inc. Microprocessor apparatus and method for providing configurable cryptographic key size
US7532722B2 (en) * 2003-04-18 2009-05-12 Ip-First, Llc Apparatus and method for performing transparent block cipher cryptographic functions
US7502943B2 (en) * 2003-04-18 2009-03-10 Via Technologies, Inc. Microprocessor apparatus and method for providing configurable cryptographic block cipher round results
US7539876B2 (en) * 2003-04-18 2009-05-26 Via Technologies, Inc. Apparatus and method for generating a cryptographic key schedule in a microprocessor
US8060755B2 (en) * 2003-04-18 2011-11-15 Via Technologies, Inc Apparatus and method for providing user-generated key schedule in a microprocessor cryptographic engine
US7392399B2 (en) * 2003-05-05 2008-06-24 Sun Microsystems, Inc. Methods and systems for efficiently integrating a cryptographic co-processor
FR2857535A1 (en) * 2003-07-09 2005-01-14 Atmel Corp Sequential cell data scrambling system for e.g. microcontroller, has scrambling unit receiving input from data bus to produce output transmitted to cell, and descrambling unit producing output identical to input of scrambling unit
US7412588B2 (en) 2003-07-25 2008-08-12 International Business Machines Corporation Network processor system on chip with bridge coupling protocol converting multiprocessor macro core local bus to peripheral interfaces coupled system bus
JP4700611B2 (en) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト Data processing apparatus and data processing method
US20050071656A1 (en) * 2003-09-25 2005-03-31 Klein Dean A. Secure processor-based system and method
US7653196B2 (en) * 2004-04-27 2010-01-26 Intel Corporation Apparatus and method for performing RC4 ciphering
US7330988B2 (en) * 2004-06-30 2008-02-12 Sun Microsystems, Inc. Method and apparatus for power throttling in a multi-thread processor
US7861063B1 (en) 2004-06-30 2010-12-28 Oracle America, Inc. Delay slot handling in a processor
US7373489B1 (en) 2004-06-30 2008-05-13 Sun Microsystems, Inc. Apparatus and method for floating-point exception prediction and recovery
US7774393B1 (en) 2004-06-30 2010-08-10 Oracle America, Inc. Apparatus and method for integer to floating-point format conversion
US7370243B1 (en) 2004-06-30 2008-05-06 Sun Microsystems, Inc. Precise error handling in a fine grain multithreaded multicore processor
US7941642B1 (en) 2004-06-30 2011-05-10 Oracle America, Inc. Method for selecting between divide instructions associated with respective threads in a multi-threaded processor
US7533248B1 (en) 2004-06-30 2009-05-12 Sun Microsystems, Inc. Multithreaded processor including a functional unit shared between multiple requestors and arbitration therefor
US8225034B1 (en) 2004-06-30 2012-07-17 Oracle America, Inc. Hybrid instruction buffer
US7383403B1 (en) 2004-06-30 2008-06-03 Sun Microsystems, Inc. Concurrent bypass to instruction buffers in a fine grain multithreaded processor
US7478225B1 (en) 2004-06-30 2009-01-13 Sun Microsystems, Inc. Apparatus and method to support pipelining of differing-latency instructions in a multithreaded processor
US7890734B2 (en) 2004-06-30 2011-02-15 Open Computing Trust I & II Mechanism for selecting instructions for execution in a multithreaded processor
US7523330B2 (en) * 2004-06-30 2009-04-21 Sun Microsystems, Inc. Thread-based clock enabling in a multi-threaded processor
US7401206B2 (en) * 2004-06-30 2008-07-15 Sun Microsystems, Inc. Apparatus and method for fine-grained multithreading in a multipipelined processor core
US7185178B1 (en) 2004-06-30 2007-02-27 Sun Microsystems, Inc. Fetch speculation in a multithreaded processor
US7434000B1 (en) 2004-06-30 2008-10-07 Sun Microsystems, Inc. Handling duplicate cache misses in a multithreaded/multi-core processor
US7426630B1 (en) 2004-06-30 2008-09-16 Sun Microsystems, Inc. Arbitration of window swap operations
US7747771B1 (en) 2004-06-30 2010-06-29 Oracle America, Inc. Register access protocol in a multihreaded multi-core processor
US7353364B1 (en) 2004-06-30 2008-04-01 Sun Microsystems, Inc. Apparatus and method for sharing a functional unit execution resource among a plurality of functional units
US7178005B1 (en) 2004-06-30 2007-02-13 Sun Microsystems, Inc. Efficient implementation of timers in a multithreaded processor
US7702887B1 (en) 2004-06-30 2010-04-20 Sun Microsystems, Inc. Performance instrumentation in a fine grain multithreaded multicore processor
US7343474B1 (en) 2004-06-30 2008-03-11 Sun Microsystems, Inc. Minimal address state in a fine grain multithreaded processor
US8095778B1 (en) 2004-06-30 2012-01-10 Open Computing Trust I & II Method and system for sharing functional units of a multithreaded processor
US7216216B1 (en) 2004-06-30 2007-05-08 Sun Microsystems, Inc. Register window management using first pipeline to change current window and second pipeline to read operand from old window and write operand to new window
US7437538B1 (en) 2004-06-30 2008-10-14 Sun Microsystems, Inc. Apparatus and method for reducing execution latency of floating point operations having special case operands
US7676655B2 (en) * 2004-06-30 2010-03-09 Sun Microsystems, Inc. Single bit control of threads in a multithreaded multicore processor
US7496753B2 (en) * 2004-09-02 2009-02-24 International Business Machines Corporation Data encryption interface for reducing encrypt latency impact on standard traffic
US7409558B2 (en) * 2004-09-02 2008-08-05 International Business Machines Corporation Low-latency data decryption interface
WO2006059873A1 (en) * 2004-12-01 2006-06-08 Bstech Co., Ltd. Encryption processor
KR20060061219A (en) * 2004-12-01 2006-06-07 주식회사 비에스텍 E n c r y p t i o n p r o c e s s o r
US8037250B1 (en) 2004-12-09 2011-10-11 Oracle America, Inc. Arbitrating cache misses in a multithreaded/multi-core processor
US20060153382A1 (en) * 2005-01-12 2006-07-13 Sony Computer Entertainment America Inc. Extremely fast data encryption, decryption and secure hash scheme
US8271805B2 (en) * 2005-02-04 2012-09-18 Sony Computer Entertainment Inc. Methods and apparatus for providing a secure buffer
KR20070118589A (en) * 2005-02-11 2007-12-17 유니버셜 데이터 프로텍션 코퍼레이션 Method and system for microprocessor data security
US7587614B1 (en) * 2005-08-30 2009-09-08 Altera Corporation Encryption algorithm optimized for FPGAs
US20070150530A1 (en) * 2005-12-13 2007-06-28 Intel Corporation Resisting cache timing based attacks
US7873830B2 (en) * 2006-01-13 2011-01-18 International Business Machines Corporation Methods for coordinating access to memory from at least two cryptography secure processing units
JP2009524134A (en) 2006-01-18 2009-06-25 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト Hardware definition method
US9860055B2 (en) * 2006-03-22 2018-01-02 Synopsys, Inc. Flexible architecture for processing of large numbers and method therefor
JP4919690B2 (en) * 2006-04-19 2012-04-18 シーイエス エレクトロニカ インダストリア エ コメルスィオ リミタダ Magnetic card reading system
JP2008011512A (en) * 2006-06-01 2008-01-17 Canon Inc Data processing apparatus, data storage device and data processing methods therefor
US7693257B2 (en) * 2006-06-29 2010-04-06 Accuray Incorporated Treatment delivery optimization
US8301905B2 (en) * 2006-09-08 2012-10-30 Inside Secure System and method for encrypting data
US7889861B2 (en) * 2006-09-13 2011-02-15 Michael Borza Multiple sequential security key encryption-decryption
US8213607B2 (en) * 2006-10-18 2012-07-03 Qualcomm Incorporated Method for securely extending key stream to encrypt high-entropy data
US7953221B2 (en) * 2006-12-28 2011-05-31 Intel Corporation Method for processing multiple operations
US8594322B2 (en) * 2007-07-10 2013-11-26 Stmicroelectronics S.R.L. Encoding/decoding apparatus
US8347359B2 (en) * 2007-12-28 2013-01-01 Bruce Backa Encryption sentinel system and method
US7522723B1 (en) 2008-05-29 2009-04-21 Cheman Shaik Password self encryption method and system and encryption by keys generated from personal secret information
GB2463031B (en) * 2008-08-28 2010-12-15 Samsung Electronics Co Ltd Device and method for encrypting data or providing an encryption key
US20100115494A1 (en) * 2008-11-03 2010-05-06 Gorton Jr Richard C System for dynamic program profiling
US8024719B2 (en) 2008-11-03 2011-09-20 Advanced Micro Devices, Inc. Bounded hash table sorting in a dynamic program profiling system
US8478948B2 (en) * 2008-12-04 2013-07-02 Oracle America, Inc. Method and system for efficient tracing and profiling of memory accesses during program execution
JP5573843B2 (en) 2009-10-05 2014-08-20 コニカミノルタ株式会社 Surface plasmon enhanced fluorescence measurement device
US20120008768A1 (en) * 2010-07-08 2012-01-12 Texas Instruments Incorporated Mode control engine (mce) for confidentiality and other modes, circuits and processes
KR101286021B1 (en) 2012-02-02 2013-07-19 주식회사 이노와이어리스 Apparatus and method for generating interleaved index
KR101481402B1 (en) 2012-10-31 2015-01-14 고려대학교 산학협력단 System of encryption/decryption and Method thereof in smart card in public key crypto algorithm
GB201513316D0 (en) 2015-07-29 2015-09-09 Flynn Thomas M P19-0 encoding engine
US9660966B1 (en) * 2015-09-10 2017-05-23 Rockwell Collins, Inc. Multilevel secure communication systems with encryption based separation
US10706101B2 (en) 2016-04-14 2020-07-07 Advanced Micro Devices, Inc. Bucketized hash tables with remap entries
JP6834771B2 (en) * 2017-05-19 2021-02-24 富士通株式会社 Communication device and communication method
CN109710308B (en) * 2017-10-25 2023-03-31 阿里巴巴集团控股有限公司 Task processing method, device and system
US20220060315A1 (en) * 2019-01-07 2022-02-24 Cryptography Research, Inc. Sign-based partial reduction of modular operations in arithmetic logic units
US11599649B2 (en) * 2020-06-29 2023-03-07 Rockwell Automation Technologies, Inc. Method and apparatus for managing transmission of secure data packets
CN112052042B (en) * 2020-09-15 2023-08-15 厦门壹普智慧科技有限公司 Data pipeline processor system
WO2023003737A2 (en) * 2021-07-23 2023-01-26 Cryptography Research, Inc. Multi-lane cryptographic engine and operations thereof

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL98963C (en) * 1957-01-16
US4004089A (en) 1975-02-28 1977-01-18 Ncr Corporation Programmable cryptic device for enciphering and deciphering data
US4274085A (en) 1979-06-28 1981-06-16 Motorola, Inc. Flexible mode DES system
DE3003998A1 (en) 1980-02-04 1981-09-24 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt DATA ENCRYPTION AND DECRYLING SYSTEM
US4306289A (en) 1980-02-04 1981-12-15 Western Electric Company, Inc. Digital computer having code conversion apparatus for an encrypted program
US4439839A (en) 1981-08-24 1984-03-27 International Telephone And Telegraph Corporation Dynamically programmable processing element
US4598170A (en) 1984-05-17 1986-07-01 Motorola, Inc. Secure microprocessor
US4747139A (en) 1984-08-27 1988-05-24 Taaffe James L Software security method and systems
US4641238A (en) 1984-12-10 1987-02-03 Itt Corporation Multiprocessor system employing dynamically programmable processing elements controlled by a master processor
US4707800A (en) 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
US4720780A (en) * 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
JPS62229440A (en) 1986-03-31 1987-10-08 Toshiba Corp Array multiplier
US4809169A (en) * 1986-04-23 1989-02-28 Advanced Micro Devices, Inc. Parallel, multiple coprocessor computer architecture having plural execution modes
JPS62271016A (en) 1986-05-19 1987-11-25 Sony Corp Digital signal processor
JPS643734A (en) 1987-06-25 1989-01-09 Fujitsu Ltd Multiplication circuit
US4914697A (en) * 1988-02-01 1990-04-03 Motorola, Inc. Cryptographic method and apparatus with electronically redefinable algorithm
GB2215496A (en) 1988-02-25 1989-09-20 Texas Instruments Ltd Multi-stage parallel binary adders and/or subtractors
US5038282A (en) * 1988-05-11 1991-08-06 Massachusetts Institute Of Technology Synchronous processor with simultaneous instruction processing and data transfer
US5001662A (en) 1989-04-28 1991-03-19 Apple Computer, Inc. Method and apparatus for multi-gauge computation
US5617574A (en) * 1989-05-04 1997-04-01 Texas Instruments Incorporated Devices, systems and methods for conditional instructions
US5109506A (en) * 1989-06-19 1992-04-28 International Business Machines Corp. Microcomputer system including a microprocessor reset circuit
JP2825205B2 (en) * 1989-07-20 1998-11-18 日本電信電話株式会社 Encryption device
US5239654A (en) * 1989-11-17 1993-08-24 Texas Instruments Incorporated Dual mode SIMD/MIMD processor providing reuse of MIMD instruction memories as data memories when operating in SIMD mode
DE4016203A1 (en) * 1990-05-19 1991-11-21 Rolf Prof Dr Trautner METHOD FOR BLOCK-ENCRYPTING DIGITAL DATA
US5546343A (en) * 1990-10-18 1996-08-13 Elliott; Duncan G. Method and apparatus for a single instruction operating multiple processors on a memory chip
US5301340A (en) * 1990-10-31 1994-04-05 International Business Machines Corporation IC chips including ALUs and identical register files whereby a number of ALUs directly and concurrently write results to every register file per cycle
US5708836A (en) * 1990-11-13 1998-01-13 International Business Machines Corporation SIMD/MIMD inter-processor communication
US5524250A (en) * 1991-08-23 1996-06-04 Silicon Graphics, Inc. Central processing unit for processing a plurality of threads using dedicated general purpose registers and masque register for providing access to the registers
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
FR2693287B1 (en) 1992-07-03 1994-09-09 Sgs Thomson Microelectronics Sa Method for carrying out numerical calculations, and arithmetic unit for implementing this method.
US5343416A (en) * 1992-11-02 1994-08-30 Intel Corporation Method and apparatus for re-configuring a partial product reduction tree
US5446909A (en) * 1992-12-11 1995-08-29 National Semiconductor Corporation Binary multiplication implemented by existing hardware with minor modifications to sequentially designate bits of the operand
DE69424626T2 (en) * 1993-11-23 2001-01-25 Hewlett Packard Co Parallel data processing in a single processor
EP0661624A1 (en) * 1994-01-04 1995-07-05 Sun Microsystems, Inc. Pseudo-superscalar technique for video processing
US5694143A (en) * 1994-06-02 1997-12-02 Accelerix Limited Single chip frame buffer and graphics accelerator
FR2725055A1 (en) * 1994-09-28 1996-03-29 Trt Telecom Radio Electr MODULAR OPERATIONS CALCULATION DEVICE AND CHIP CARD INCLUDING SUCH A DEVICE
US5864683A (en) * 1994-10-12 1999-01-26 Secure Computing Corporartion System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights
DE69637799D1 (en) * 1995-02-13 2009-02-12 Intertrust Tech Corp Systems and procedures for secure transaction management and electronic legal protection
US5675164A (en) * 1995-06-07 1997-10-07 International Business Machines Corporation High performance multi-mesa field effect transistor
DE69635651T2 (en) * 1995-09-05 2006-09-07 Mitsubishi Denki K.K. Device and method for data conversion
JP3156562B2 (en) * 1995-10-19 2001-04-16 株式会社デンソー Vehicle communication device and traveling vehicle monitoring system
US5870470A (en) * 1996-02-20 1999-02-09 International Business Machines Corporation Method and apparatus for encrypting long blocks using a short-block encryption procedure
CN1160622C (en) 1996-03-28 2004-08-04 皇家菲利浦电子有限公司 Method and computer system for processing a set of data elements on a sequential processor
TW421757B (en) * 1996-06-06 2001-02-11 Matsushita Electric Ind Co Ltd Arithmetic processor
US5724422A (en) * 1996-08-05 1998-03-03 Industrial Technology Research Institute Encrypting and decrypting instruction boundaries of instructions in a superscalar data processing system
EP1013026A4 (en) * 1997-09-16 2004-09-08 Information Resource Engineeri Cryptographic co-processor
GB9727414D0 (en) 1997-12-29 1998-02-25 Imperial College Logic circuit
US6088800A (en) 1998-02-27 2000-07-11 Mosaid Technologies, Incorporated Encryption processor with shared memory interconnect
JP3499810B2 (en) 2000-03-06 2004-02-23 株式会社東芝 ENCRYPTION DEVICE, ENCRYPTION METHOD, COMPUTER-READABLE RECORDING MEDIUM CONTAINING PROGRAM FOR FUNCTIONING COMPUTER AS ENCRYPTION DEVICE, AND COMPUTER READING RECORDING PROGRAM FOR FUNCTIONING COMPUTER AS DECRYPTION DEVICE, DECRYPTION METHOD, AND DECRYPTION DEVICE Possible recording media

Also Published As

Publication number Publication date
GB2350218B (en) 2003-04-23
JP5208174B2 (en) 2013-06-12
JP2006320014A (en) 2006-11-24
USRE44697E1 (en) 2014-01-07
FR2778519A1 (en) 1999-11-12
CA2244337C (en) 2009-01-20
US6434699B1 (en) 2002-08-13
KR100638189B1 (en) 2006-10-26
WO1999044329A2 (en) 1999-09-02
DE19983127T1 (en) 2001-05-10
JP2002505451A (en) 2002-02-19
FR2778519B1 (en) 2006-08-18
JP2011008285A (en) 2011-01-13
US6088800A (en) 2000-07-11
WO1999044329A3 (en) 2000-03-02
JP3979786B2 (en) 2007-09-19
KR20010041069A (en) 2001-05-15
GB2350218A (en) 2000-11-22
JP5025180B2 (en) 2012-09-12
GB0021091D0 (en) 2000-10-11

Similar Documents

Publication Publication Date Title
CA2244337A1 (en) Encryption processor with shared memory interconnect
US8575959B2 (en) Reconfigurable logic fabrics for integrated circuits and systems and methods for configuring reconfigurable logic fabrics
US20030052711A1 (en) Despreader/correlator unit for use in reconfigurable chip
Vandemeulebroecke et al. A new carry-free division algorithm and its application to a single-chip 1024-b RSA processor
US20040039928A1 (en) Cryptographic processor
Leong et al. A bit-serial implementation of the international data encryption algorithm IDEA
GB2348992A (en) Logic circuit
CN101547089B (en) Method for realizing elliptic curve cryptosystem algorithm over prime field in integrated circuit
WO2001057627A3 (en) Circuits, systems and methods for information privatization in personal electronic appliances
WO2004040397A3 (en) Secure implementation and utilization of device-specific security data
HK1040002A1 (en) Scaleable integrated data processing device.
Ruetz The architectures and design of a 20-MHz real-time DSP chip set
KR20030062422A (en) Cryptography processor
Wang Bit-level systolic array for fast exponentiation in GF (2/sup m/)
Cardarilli et al. Reducing power dissipation in FIR filters using the residue number system
US9270274B1 (en) FPGA configuration data scrambling using input multiplexers
AU2553000A (en) Countermeasure method in an electronic component using a secret key cryptographic algorithm
CA2663266A1 (en) Random number generation
US20040186872A1 (en) Transitive processing unit for performing complex operations
Pornin et al. Software-hardware trade-offs: Application to A5/1 cryptanalysis
CA2617389A1 (en) Encryption processor with shared memory interconnect
Zhou et al. FHEmem: A Processing In-Memory Accelerator for Fully Homomorphic Encryption
Sekar et al. Design of Reconfigurable Signed Dual Modulo Multiplier Function (DMMF) for RNS
US20050165875A1 (en) Arithmetic device
US20040133795A1 (en) Method and system for handling multiple security protocols in a processing system

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20160801