Patents Assigned to BOPS, Inc.
  • Publication number: 20040078674
    Abstract: The present application addresses a new approach to applying formal verification techniques to automatically generate intelligent test vectors that cover specific architectural properties. In one aspect, this approach uses a bounded model checking with satisfiability solving to traverse a finite state transition system that represents an instruction set architecture, in order to generate high quality test vectors. The experimental results, performed on a BOPS VLIW DSP core consisting of an array of four pipelined processors, demonstrate that the technique can advantageously handle large industrial designs. The proposed technique has several advantages. Designers can specify architectural states using Boolean variables and generate test vectors for any state that is reachable, within the compute resources available or prove that the state is unreachable within the given bound k. This technique also allows the designer to restrict specific states from being covered by the test.
    Type: Application
    Filed: April 4, 2002
    Publication date: April 22, 2004
    Applicant: BOPS, Inc.
    Inventors: Richard S. Raimi, Fadi Aloul
  • Publication number: 20040015931
    Abstract: A systematic approach to architecture and design of the instruction fetch mechanisms and instruction set architectures in embedded processors is described. This systematic approach allows a relaxing of certain restrictions normally imposed by a fixed-size instruction set architecture (ISA) on design and development of an embedded system. The approach also guarantees highly efficient usage of the available instruction storage which is only bounded by the actual information contents of an application or its entropy. The result of this efficiency increase is a general reduction of the storage requirements, or a compression, of the instruction segment of the original application. An additional feature of this system is the full decoupling of the ISA from the core architecture. This decoupling allows usage of a variable length encoding for any size of the ISA without impacting the physical instruction memory organization or layout and branching mechanism as well as tuning of the execution core to the application.
    Type: Application
    Filed: April 10, 2002
    Publication date: January 22, 2004
    Applicant: BOPS, Inc.
    Inventors: Sergei Yurievich Larin, Gerald George Pechanek, Thomas M. Conte
  • Publication number: 20030161540
    Abstract: Techniques for performing the processing of blocks of video in multiple stages. Each stage is executed for blocks of data in the frame that need to go through that stage, based on the coding type, before moving to the next stage. This order of execution allows blocks of data to be processed in a nonsequential order, unless the blocks need to go through the same processing stages. Multiple processing elements (PEs) operating in SIMD mode executing the same task and operating on different blocks of data may be utilized, avoiding idle times for the PEs. In another aspect, inverse scan and dequantization operations for blocks of data are merged in a single procedure operating on multiple PEs operating in SIMD mode. This procedure makes efficient use of the multiple PEs and speeds up processing by combining two operations, inverse scan (reordering) and dequantization, which load the execution units differently.
    Type: Application
    Filed: October 29, 2002
    Publication date: August 28, 2003
    Applicant: BOPS, Inc.
    Inventors: Doina Petrescu, Trampas Stern, Marco Jacobs, Dan Searles, Charles W. Kurak
  • Patent number: 6606699
    Abstract: An apparatus for concurrently executing controller single instruction single data (SISD) instructions and single instruction multiple data (SIMD) processing element instructions comprising a combined controller and processing element. At least first and second simplex instructions each comprise a mode of operation bit, said mode of operation bit in the first simplex instruction specifying a controller SISD operation for execution by the controller, and the mode of operation bit in the second simplex instruction specifying a procesing element SIMD operation for execution by the processsing element. A very long instruction word (VLIW) contains said at least first and second simplex instructions.
    Type: Grant
    Filed: February 14, 2001
    Date of Patent: August 12, 2003
    Assignee: Bops, Inc.
    Inventors: Gerald G. Pechanek, Juan G. Revilla
  • Patent number: 6581152
    Abstract: An indirect VLIW (iVLIW) architecture is described which contains a minimum of two instruction memories. The first instruction memory (SIM) contains short-instruction-words (SIWs) of a fixed length. The second instruction memory (VIM), contains very-long-instruction-words (VLIWs) which allow execution of multiple instructions in parallel. Each SIW may be fetched and executed as an independent instruction by one of the available execution units. A special class of SIW is used to reference the VIM indirectly to either execute or load a specified VLIW instruction (called an “XV” instruction for “eXecute VLIW”, or LV for “Load VLIW”). In these cases, the SIW instruction specifies how the location of the VLIW is to be accessed. Other aspects of this approach relate to the application of data memory addressing techniques for execution or loading of VLIWs that parallel the addressing modes used for data memory accesses.
    Type: Grant
    Filed: February 11, 2002
    Date of Patent: June 17, 2003
    Assignee: BOPS, Inc.
    Inventors: Edwin F. Barry, Gerald G. Pechanek
  • Publication number: 20030105945
    Abstract: Techniques for performing a bit rake instruction in a programmable processor. The bit rake instruction extracts an arbitrary pattern of bits from a source register, based on a mask provided in another register, and packs and right justifies the bits into a target register. The bit rake instruction allows any set of bits from the source register to be packed together.
    Type: Application
    Filed: October 29, 2002
    Publication date: June 5, 2003
    Applicant: BOPS, Inc.
    Inventors: Edward A. Wolff, Peter R. Molnar, Ayman Elezabi, Gerald George Pechanek
  • Patent number: 6557094
    Abstract: A hierarchical instruction set architecture (ISA) provides pluggable instruction set capability and support of array processors. The term pluggable is from the programmer's viewpoint and relates to groups of instructions that can easily be added to a processor architecture for code density and performance enhancements. One specific aspect addressed herein is the unique compacted instruction set which allows the programmer the ability to dynamically create a set of compacted instructions on a task by task basis for the primary purpose of improving control and parallel code density. These compacted instructions are parallelizable in that they are not specifically restricted to control code application but can be executed in the processing elements (PEs) in an array processor. The ManArray family of processors is designed for this dynamic compacted instruction set capability and also supports a scalable array of from one to N PEs.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: April 29, 2003
    Assignee: Bops, Inc.
    Inventors: Gerald G. Pechanek, Edwin F. Barry, Juan Guillermo Revilla, Larry D. Larsen
  • Publication number: 20030079109
    Abstract: A pipelined data processing unit includes an instruction sequencer and n functional units capable of executing n operations in parallel. The instruction sequencer includes a random access memory for storing very-long-instruction-words (VLIWs) used in operations involving the execution of two or more functional units in parallel. Each VLIW comprises a plurality of short-instruction-words (SIWs) where each SIW corresponds to a unique type of instruction associated with a unique functional unit. VLIWs are composed in the VLIW memory by loading and concatenating SIWs in each address, or entry. VLIWs are executed via the execute-VLIW (XV) instruction. The iVLIWs can be compressed at a VLIW memory address by use of a mask field contained within the XV1 instruction which specifies which functional units are enabled, or disabled, during the execution of the VLIW. The mask can be changed each time the XV1 instruction is executed, effectively modifying the VLIW every time it is executed.
    Type: Application
    Filed: September 24, 2002
    Publication date: April 24, 2003
    Applicant: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Juan Guillermo Revilla, Edwin F. Barry
  • Publication number: 20030046462
    Abstract: Techniques for a pipelined bus which provides a very high performance interface to computing elements, such as processing elements, host interfaces, memory controllers, and other application-specific coprocessors and external interface units. The pipelined bus is a robust interconnected bus employing a scalable, pipelined, multi-client topology, with a fully synchronous, packet-switched, split-transaction data transfer model. Multiple non-interfering transfers may occur concurrently since there is no single point of contention on the bus. An aggressive packet transfer model with local conflict resolution in each client and packet-level retries allows recovery from collisions and buffer backups. Clients are assigned unique IDs, based upon a mapping from the system address space allowing identification needed for quick routing of packets among clients.
    Type: Application
    Filed: April 25, 2002
    Publication date: March 6, 2003
    Applicant: BOPS, Inc.
    Inventors: Edward A. Wolff, David Baker, Bryan Garnett Cope, Edwin Franklin Barry
  • Publication number: 20030020835
    Abstract: Techniques for removing ringing artifacts from video data. A deringing filter in accordance with the present invention preserves real image edges in a video frame, while smoothing out the interiors of objects. In one aspect, a 9-tap low-pass filter is applied to an adaptive processing window. The filter window is initialized with the values in a 3×3 mask centered on the position whose output is computed. Then all values that are very different from the central one are replaced with the central value. The deringing filter varies between 3×3 low-pass and identity, depending on how much the central value differs from its surrounding ones. A deblocking filter in accordance may also be suitably used in conjunction with the deringing filter.
    Type: Application
    Filed: May 1, 2002
    Publication date: January 30, 2003
    Applicant: BOPS, Inc.
    Inventor: Doina Petrescu
  • Publication number: 20020178345
    Abstract: General purpose flags (ACFs) are defined and encoded utilizing a hierarchical one-, two- or three-bit encoding. Each added bit provides a superset of the previous functionality. With condition combination, a sequential series of conditional branches based on complex conditions may be avoided and complex conditions can then be used for conditional execution. ACF generation and use can be specified by the programmer. By varying the number of flags affected, conditional operation parallelism can be widely varied, for example, from mono-processing to octal-processing in VLIW execution, and across an array of processing elements (PE)s. Multiple PEs can generate condition information at the same time with the programmer being able to specify a conditional execution in one processor based upon a condition generated in a different processor using the communications interface between the processing elements to transfer the conditions.
    Type: Application
    Filed: April 1, 2002
    Publication date: November 28, 2002
    Applicant: BOPS, Inc.
    Inventors: Thomas L. Drabenstott, Gerald George Pechanek, Edwin Franklin Barry, Charles W. Kurak,
  • Publication number: 20020169813
    Abstract: Efficient computation of complex long multiplication results and an efficient calculation of a covariance matrix are described. A parallel array VLIW digital signal processor is employed along with specialized complex long multiplication instructions and communication operations between the processing elements which are overlapped with computation to provide very high performance operation. Successive iterations of a loop of tightly packed VLIWs may be used allowing the complex multiplication pipeline hardware to be efficiently used.
    Type: Application
    Filed: November 1, 2001
    Publication date: November 14, 2002
    Applicant: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Ricardo Rodriguez, Matthew Plonski, David Strube, Kevin Coopman
  • Patent number: 6470441
    Abstract: A manifold array topology includes processing elements, nodes, memories or the like arranged in clusters. Clusters are connected by cluster switch arrangements which advantageously allow changes of organization without physical rearrangement of processing elements. A significant reduction in the typical number of interconnections for preexisting arrays is also achieved. Fast, efficient and cost effective processing and communication result with the added benefit of ready scalability.
    Type: Grant
    Filed: November 6, 2000
    Date of Patent: October 22, 2002
    Assignee: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Nikos P. Pitsianis, Edwin F. Barry, Thomas L. Drabenstott
  • Patent number: 6467036
    Abstract: A pipelined data processing unit includes an instruction sequencer and n functional units capable of executing n operations in parallel. The instruction sequencer includes a random access memory for storing very-long-instruction-words (VLIWs) used in operations involving the execution of two or more functional units in parallel. Each VLIW comprises a plurality of short-instruction-words (SIWs) where each SIW corresponds to a unique type of instruction associated with a unique functional unit. VLIWs are composed in the VLIW memory by loading and concatenating SIWs in each address, or entry. VLIWs are executed via the execute-VLIW (XV) instruction. The iVLIWs can be compressed at a VLIW memory address by use of a mask field contained within the XV1 instruction which specifies which functional units are enabled, or disabled, during the execution of the VLIW. The mask can be changed each time the XV1 instruction is executed, effectively modifying the VLIW every time it is executed.
    Type: Grant
    Filed: November 21, 2000
    Date of Patent: October 15, 2002
    Assignee: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Juan Guillermo Revilla, Edwin F. Barry
  • Publication number: 20020144082
    Abstract: Processing element to processing element switch connection control is described using a receive model that precludes communication hazards from occurring in a synchronous MIMD mode of operation. Such control allows different communication topologies and various processing effects such as an array transpose, hypercomplement or the like to be efficiently achieved utilizing architectures, such as the manifold array processing architecture. An encoded instruction method reduces the amount of state information and setup burden on the programmer taking advantage of the recognition that the majority of algorithms will use only a small fraction of all possible mux settings available. Thus, by means of transforming the PE identification based upon a communication path specified by a PE communication instruction an efficient switch control mechanism can be used.
    Type: Application
    Filed: April 1, 2002
    Publication date: October 3, 2002
    Applicant: BOPS, Inc.
    Inventors: Edwin Franklin Barry, Gerald George Pechanek, Thomas L. Drabenstott, Edward A. Wolff, Nikos P. Pitsianis, Grayson Morris
  • Patent number: 6457073
    Abstract: A variety of advantageous mechanisms for improved data transfer control within a data processing system are described. A DMA controller is described which is implemented as a multiprocessing transfer engine supporting multiple transfer controllers which may work independently or in cooperation to carry out data transfers, with each transfer controller acting as an autonomous processor, fetching and dispatching DMA instructions to multiple execution units. In particular, mechanisms for initiating and controlling the sequence of data transfers are provided, as are processes for autonomously fetching DMA instructions which are decoded sequentially but executed in parallel.
    Type: Grant
    Filed: June 29, 2001
    Date of Patent: September 24, 2002
    Assignee: Bops, Inc.
    Inventors: Edwin Frank Barry, Edward A. Wolff
  • Patent number: 6453367
    Abstract: Techniques are described for providing mechanisms of data distribution to and collection of data from multiple memories in a data processing system. The system may suitably be a manifold array (ManArray) processing system employing an array of processing elements. Virtual to physical processing element (PE) identifier translation is employed in conjunction with a ManArray PE interconnection topology to support a variety of communication models, such as hypercube and such. Also, PE addressing nodes are based upon logically nested parameterized loops. Mechanisms for updating loop parameters, as well as exemplary instruction formats are also described.
    Type: Grant
    Filed: May 14, 2001
    Date of Patent: September 17, 2002
    Assignee: BOPS, Inc.
    Inventor: Edwin Frank Barry
  • Patent number: 6446190
    Abstract: A double indirect method of accessing a block of data in a register file is used to allow efficient implementations without the use of specialized vector processing hardware. In addition, the automatic modification of the register addressing is not tied to a single vector instruction nor to repeat or loop instructions. Rather, the technique, termed register file indexing (RFI) allows full programmer flexibilty in control of the block data operational facility and provides the capability to mix non-RFI instructions with RFI instructions. The block-data operation facility is embedded in the iVLIW ManArray architecture allowing its generalized use across the instruction set architecture without specialized vector instructions or being limited in use only with repeat or loop instructions.
    Type: Grant
    Filed: March 12, 1999
    Date of Patent: September 3, 2002
    Assignee: Bops, Inc.
    Inventors: Edwin F. Barry, Gerald G. Pechanek, Patrick R. Marchand
  • Patent number: 6446191
    Abstract: A SIMD machine employing a plurality of parallel processor (PEs) in which communications hazards are eliminated in an efficient manner. An indirect Very Long Instruction Word instruction memory (VIM) is employed along with execute and delimiter instructions. A masking mechanism may be employed to control which PEs have their VIMs loaded. Further, a receive model of operation is preferably employed. In one aspect, each PE operates to control a switch that selects from which PE it receives. The present invention addresses a better machine organization for execution of parallel algorithms that reduces hardware cost and complexity while maintaining the best characteristics of both SIMD and MIMD machines and minimizing communication latency. This invention brings a level of MIMD computational autonomy to SIMD indirect Very Long Instruction Word (iVLIW) processing elements while maintaining the single thread of control used in the SIMD machine organization.
    Type: Grant
    Filed: October 2, 2000
    Date of Patent: September 3, 2002
    Assignee: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Thomas L. Drabenstott, Juan Guillermo Revilla, David Carl Strube, Grayson Morris
  • Patent number: 6430677
    Abstract: A reconfigurable register file integrated in an instruction set architecture capable of extended precision operations, and also capable of parallel operation on lower precision data is described. A register file is composed of two separate files with each half containing half as many registers as the original. The halves are designated even or odd by virtue of the register addresses which they contain. Single width and double width operands are optimally supported without increasing the register file size and without increasing the number of register file ports. Separate extended registers are also employed to provide extended precision for operations such as multiply-accumulate operations.
    Type: Grant
    Filed: February 28, 2001
    Date of Patent: August 6, 2002
    Assignee: BOPS, Inc.
    Inventors: Gerald G. Pechanek, Edwin F. Barry