WO2002029600A2 - Zellenarordnung mit segmentierterwischenzellstruktur - Google Patents

Zellenarordnung mit segmentierterwischenzellstruktur Download PDF

Info

Publication number
WO2002029600A2
WO2002029600A2 PCT/EP2001/011593 EP0111593W WO0229600A2 WO 2002029600 A2 WO2002029600 A2 WO 2002029600A2 EP 0111593 W EP0111593 W EP 0111593W WO 0229600 A2 WO0229600 A2 WO 0229600A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
logic
units
logic cell
array
Prior art date
Application number
PCT/EP2001/011593
Other languages
English (en)
French (fr)
Other versions
WO2002029600A3 (de
Inventor
Martin Vorbach
Frank May
Dirk Reichardt
Frank Lier
Gerd Ehlers
Armin NÜCKEL
Volker Baumgarte
Prashant Rao
Jens Oertel
Original Assignee
Pact Informationstechnologie Gmbh
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 Pact Informationstechnologie Gmbh filed Critical Pact Informationstechnologie Gmbh
Priority to US10/398,546 priority Critical patent/US7595659B2/en
Priority to AT01986361T priority patent/ATE437476T1/de
Priority to DE50115002T priority patent/DE50115002D1/de
Priority to AU2002220600A priority patent/AU2002220600A1/en
Priority to EP01986361A priority patent/EP1348257B8/de
Priority to JP2002533102A priority patent/JP2004517386A/ja
Priority to AU2060002A priority patent/AU2060002A/xx
Priority to PCT/EP2002/002403 priority patent/WO2002071249A2/de
Priority to US10/469,910 priority patent/US20070299993A1/en
Priority to US10/471,061 priority patent/US7581076B2/en
Priority to EP02727358A priority patent/EP1540507B1/de
Priority to EP02712937A priority patent/EP1454258A2/de
Priority to JP2002570104A priority patent/JP2004536373A/ja
Priority to AU2002254921A priority patent/AU2002254921A1/en
Priority to EP02724198.3A priority patent/EP1386220B1/de
Priority to PCT/EP2002/002402 priority patent/WO2002071196A2/de
Priority to JP2002570052A priority patent/JP4011488B2/ja
Priority to JP2002570103A priority patent/JP2004535613A/ja
Priority to AU2002257615A priority patent/AU2002257615A1/en
Priority to PCT/EP2002/002398 priority patent/WO2002071248A2/de
Publication of WO2002029600A2 publication Critical patent/WO2002029600A2/de
Priority to EP02777144A priority patent/EP1466264B1/de
Priority to PCT/EP2002/010479 priority patent/WO2003025781A2/de
Priority to AU2002338729A priority patent/AU2002338729A1/en
Priority to AU2002357982A priority patent/AU2002357982A1/en
Priority to JP2003538928A priority patent/JP4456864B2/ja
Priority to PCT/EP2002/010572 priority patent/WO2003036507A2/de
Priority to EP02791644A priority patent/EP1472616B8/de
Priority to US10/490,081 priority patent/US8429385B2/en
Priority to AT02791644T priority patent/ATE533111T1/de
Publication of WO2002029600A3 publication Critical patent/WO2002029600A3/de
Priority to JP2008249115A priority patent/JP2009043275A/ja
Priority to JP2008249112A priority patent/JP2009020909A/ja
Priority to JP2008249116A priority patent/JP2009043276A/ja
Priority to JP2008249106A priority patent/JP2009054170A/ja
Priority to JP2008249099A priority patent/JP2009032281A/ja
Priority to US12/247,076 priority patent/US8209653B2/en
Priority to US12/371,040 priority patent/US8058899B2/en
Priority to US12/496,012 priority patent/US20090300262A1/en
Priority to US12/570,984 priority patent/US8312301B2/en
Priority to JP2009271120A priority patent/JP2010079923A/ja
Priority to US12/944,068 priority patent/US9037807B2/en
Priority to US13/023,796 priority patent/US8686475B2/en
Priority to US13/043,102 priority patent/US20110173389A1/en
Priority to US13/289,296 priority patent/US8471593B2/en
Priority to US13/653,639 priority patent/US9075605B2/en
Priority to US13/903,470 priority patent/US9047440B2/en
Priority to US14/219,945 priority patent/US9552047B2/en
Priority to US14/231,358 priority patent/US9436631B2/en
Priority to US14/318,211 priority patent/US9250908B2/en
Priority to US14/500,618 priority patent/US9141390B2/en
Priority to US14/718,516 priority patent/US9256575B2/en
Priority to US15/018,376 priority patent/US9626325B2/en
Priority to US15/225,638 priority patent/US10152320B2/en
Priority to US15/408,358 priority patent/US10331194B2/en
Priority to US15/488,384 priority patent/US20190065428A9/en
Priority to US16/190,931 priority patent/US20190102173A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/1778Structural details for adapting physical parameters
    • H03K19/17796Structural details for adapting physical parameters for physical disposition of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture

Definitions

  • the present invention relates to what is claimed in the preamble.
  • the present invention is concerned with improvements to logic cell arrays.
  • Logic cell arrays in particular also reconfigurable ones, are known.
  • the type of these modules include, in particular, systolic arrays, neural networks, multi-processor systems, processors with several computing units and / or logical cells and / or communicative / peripheral cells (I / O, i.e. 10), networking and / or network modules such as e.g. Crossbar switches, as well as known modules of the type FPGA, DPGA, Xputer, Chameleon etc.
  • Logic cells are thus defined as any logic and / or arithmetic and / or switch and / or memory and / or peripheral cells.
  • EU 3 s ⁇ ⁇ ⁇ ⁇ tr H DJ C: 3 tr 3 ⁇ tP P- ⁇ 3 tr ⁇ P 3 DJ £ ⁇ Q P 3. ⁇ 3 - CL o
  • bus systems for example in CMOS technology
  • CMOS complementary metal-oxide-semiconductor
  • the structure is typically complex and the operation is energetically unfavorable.
  • the object of the present invention is to provide something new for commercial use.
  • a first essential aspect of the present invention thus proposes that in a logic cell arrangement with a number of logic cells and a segmented bus system for logic cell communication, it is provided that the bus system comprises different segment lines with shorter and longer segments for connecting two points in order to increase the number to be able to keep running bus elements low with communication start and end points spaced apart.
  • the present invention thus uses in a first basic idea that by designing the buses with segments of long length designed as a simple line for bridging long distances in a logic cell arrangement, a particularly simple design and particularly economical operation result. Providing short segment lines at the same time ensures that all points can still be addressed as required.
  • the segment lines are preferably each formed from a plurality of parallel lines, the number of which is determined by the bus width and / or the bus protocol. Each segment is therefore formed by a bundle of parallel lines, as is known per se from the prior art. It is understood that then all lines of a segment have essentially the same lengths; essentially means here that the lines of a line bundle can all be routed to one and the same end point line as a data input of a logic cell, where they come from the input elements assigned to them bit by bit can be placed.
  • control inputs can be addressed in particular via the segmentable bus system, which are arranged in such a way that at least the control signals for sequence control in the logic cell, such as the signals Reset, Step, Stop, Go and Reload, can be transmitted into the cell , These are used to trigger and / or enable a " reset, reconfiguration and activation.
  • a corresponding number of bit lines can be provided; therefore, at least two bit-wide data lines are preferably provided for control signal inputs.
  • each of the a separate signal input is assigned to the controlling signals; alternatively, an input combinator circuit on a multi-bit wide status line can ensure that the cell responds properly.
  • control signal inputs are control signal inputs in that they control the configuration and / or reconfiguration (control flow) signals, in particular trigger signals as known from the aforementioned prior art can be directed to the cell, the actual communication of the cell with the or a reconfiguring unit such as a configuration manager (CT or CM) per se as is known, for example, via the so-called Ready / Ack / Rej protocol, which allows the cell to be reconfigured only under certain conditions.
  • CT or CM configuration manager
  • the bus system can comprise segments for connecting the logic cells to one another; This is the typical case and is of particular importance because a particularly high and efficient data throughput is required within the logic cell array, without the processor module having to heat up due to high power losses.
  • the present invention can be used particularly efficiently here.
  • the bus system can be routed to internal and / or external units that configure and / or reconfigure the logic cells; the buses can in particular be routed past a multiplicity of data processing and / or storing logic cells to one or more such (re) configuration units, so that either the cells can communicate with one another and / or with the or a configuration unit.
  • the bus structure can be designed accordingly.
  • bus system is led to I / O interfaces and / or to external data memories.
  • segmentation structure can be used profitably both inside and outside the logic cell field.
  • I / O interfaces transfer internal bus systems to the external module. Any bus systems may be switched alternately for external output and / or input. In addition, it is possible to combine several bus systems in such a way that they are synchronized with one another. For example, two output bus systems or one input bus and one output bus can be synchronized together.
  • F- P F- PI 3 p CQ CQ ⁇ 0 3 ⁇ F- 3 ti 3 P CQ 3 t- 1 rt ⁇ ⁇ rt ⁇ 3 CQ 3 CQ 3 tsi ⁇ ⁇ F-
  • P- rt PJ CQ ⁇ 3 tr O F- rt F- ⁇ 3 ⁇ tö ⁇ CQ rt CQ tr Hi ⁇ 3 P 3 CQ 3 3 3 F 1 F- 3 0 CQ CQ 3 ⁇ tr rt N 3 ⁇ F- F. 3 C ⁇ 3 F- ⁇ XN ⁇ CQ D ) 0 F 1 rt Hi ⁇ CL rr F- O CL 3 3 CL ⁇ ! to ⁇ ⁇ ⁇ ⁇ ⁇
  • P 3 rt 3 ⁇ 3 3 CD ⁇ CQ tr ⁇ ⁇ ⁇ ⁇ o 3 P- P 3 ⁇ CQ 3 ⁇ ⁇ F- P CL o CQ 3 3 0 F- ⁇ Ol ⁇ ⁇
  • the bus structure is comparable to a road that has fast lanes and crawling lanes and enables lane changes at predetermined intermediate points.
  • the bus system comprises a multiplicity of parallel segment lines, several parallel segment lines with longer segments being provided.
  • the longer segments of the segment lines with longer segments need not all be of the same length; a staggering can be provided.
  • the segment line ends and / or intermediate line elements in the segment lines are arranged offset with respect to one another in the bus direction.
  • Intermediate line elements such as switches, registers, multiplexers and drivers are typically provided at the segment line ends or beginnings.
  • the hardware implementation of these elements now requires considerable space, which can be considerable compared to that of the lines to be arranged in intermediate layers.
  • the preferred offset arrangement of these elements now ensures that only space is required for line intermediate element arrangements of, for example, two or three segment lines, but not for line intermediate element arrangements of all existing segment lines. It is also possible not to provide drivers or registers for all line intermediate element arrangements, but to provide them only every nth segment end.
  • the bus structure is preferably comparable to a braid from a multiplicity of strands which intersect again and again, it being possible for a segment change to take place at the strand intersections and for changing among segment pairs or segment groups which vary along the bus. It is then possible and preferred that the segment line change circles are provided for the change from a first to a second segment line at a first point and the segment line change circles for the change from a second to a third segment line are provided at a second point. In addition to the change in pairs only, the possibility is preferably also created to choose at one point or a plurality of points from a plurality of segment lines to which the change is made and / or to which data are simultaneously applied.
  • the logic cell arrangement enables the cells to communicate in two directions.
  • Running directions are defined for bus arrangements with intermediate line elements such as drivers and / or registers;
  • intermediate line elements such as drivers and / or registers;
  • separate bus arrangements for opposite directions are therefore preferably provided.
  • At least in one direction can in turn be provided for at least different, in particular again generally parallel segment lines with shorter and longer segments.
  • registers are preferably provided for at least one running direction; the register is preferably provided in the backward-running bus system, as explained above, i.e. the bus system with which signals can be returned from an element output to an element input.
  • Control information can be provided; again, one or both bus systems can be formed with segment lines having short and long segments and the respective bus systems or bus arrangements can preferably be configured separately from one another, i.e. can be defined in their interconnection and / or can be determined with regard to the operations in linking registers or the output of look-up tables.
  • the bus system is preferably used in a logic cell arrangement in which a plurality of logic cells are arranged in a row next to one another; the longer segments are then guided past at least one logic cell; If the logic cell arrangement comprises even more logic cells in a row, the longest segments are preferably guided past more than one logic cell.
  • a segmented bus system can be provided in each row and in each column, which has the structure described above with long and short segments in parallel segment lines ,
  • the bus structure described is advantageous in all arrangements in which data processing, ie logic units, are to be linked together.
  • the logic cells are selected from, comprise and / or form arithmetic units, DPGAs, Kress arrays, systolic processors and RAW machines; digital signal processors (DSPs) that have more than one arithmetic unit, configurable (programmable) logic cells or other cores and / or PAEs, ALU, input / output functions (I / O) and / or memory management units (I / O), memory ,
  • DSPs digital signal processors
  • ALU input / output functions
  • I / O input / output functions
  • I / O memory management units
  • Such a processor will preferably have a large number of different communicating logic units arranged in an array, the logic units at least having storage and data modification units and the storage units being arranged close to the edge of the array. This allows data to run through the array and, if necessary, to be temporarily stored at the edge in order to effect a reconfiguration as required. It is also possible to run through parallel rows or columns and / or on meandering catfish in order to provide excessive computing power.
  • input / output units can also be arranged closer to the edge than the storage units; this allows data to be cached before processing under array traversal.
  • at least one bus system is provided for communication of the logic units, at least from edge to edge, which is in particular segmentable as described above. It is then possible, when operating a processor, to read data from a first memory close to the edge and to change it as required in a first data change unit close to this edge, and to transfer it from there to at least one further data change unit in order to make further data changes as required.
  • the data change units are re-configured in order to redetermine the data change and the data are optionally led in the opposite direction through at least some of the data change units. It can then also be provided for the operation that the forward flow takes place in one row and the return flow takes place in the row or a row below it, in order to take pipeline effects into account.
  • the processor can have at least one programmable gate field (PGA) ' and a plurality of data modification units with ALUs, it being possible for specific applications if at least one or more PGAs are surrounded by other data modification units, in particular ALUs, in order to easily obtain data from them for linking purposes and / or to be able to spend on them.
  • PGA programmable gate field
  • an array of reconfigurable units can have a plurality of, in particular identical (sub) arrays which can be brought into communication with one another.
  • a reconfiguration unit can be provided, which can be configured to reconfigure the reconfigurable elements of the array.
  • the bus structures described above then run within the array.
  • a reconfiguration management unit is thus assigned to each array, which can be arranged in particular on an array side on which no storage and / or I / O units are provided, the reconfiguration level preferably being based on the Width of the array extends, which has the advantage that an optimal chip shape can be generated.
  • a reconfiguration management unit common to the arrays is then optionally provided, which in particular extends over the width of more than one array and is designed for communication with at least several, preferably all, of the reconfiguration units.
  • ⁇ 0 3 et J ⁇ tr 3 3 ⁇ ⁇ 1 ⁇ DJ • 3 DJ P 3 ⁇ P P P rt ⁇ P 3 3 • ⁇ P- 3 ⁇ ⁇ DJ 3 ⁇
  • buses are bindable, the buses in particular extending beyond the edge of the array and being able to be routed there in particular to I / O interface units.
  • one or more data forwarding rule implementation means in particular a look-up table, is / are provided in the processor that enable data forwarding and in particular data translation in response to the common fulfillment of a number of criteria, in particular event-related Criteria is formed.
  • the data to be forwarded can in particular be data or trigger vectors which have to do with the reconfiguration and / or reconfigurability of logic cells.
  • the function or the translation of the respective data transmission rule implementation means is configured accordingly.
  • processors also and in particular with segmented bus structures in such a way that data modification units and data storage means are provided, at least some of the data modification units being associated locally with data storage means, and in particular means are provided for writing data locally written into the local data storage means read locally for new local data changes.
  • intermediate results can be stored in a logic cell and processed further with other data and / or using other links.
  • a cell array is reconfigured from logic cells which can be reconfigured in operation, which in particular allows a reconfiguration in response to the propagation of certain predetermined data, as is done in the publications describing the wave reconfiguration and referenced in particular property rights applications of the present applicant is particularly preferred if it is possible to select whether the reconfiguration takes place in response to the data propagation for all logic cells that are flown by the specified and / or derived data and / or only for a part, in particular a processing branch (for example an if-then) Branch), while at least one other branch remains unchanged, which reduces the reconfiguration effort and / or only a partial chain of a longer row of logic cells processing data, in particular one after the other, in particular up to a predetermined location. -t.
  • CQ P ⁇ DJ PJ 03 03 ⁇ 3 3 F 1 CL ⁇ 3 CQ CL rt fß ⁇ 3 X ⁇ P ⁇ 03 3 03 DJ ⁇ ⁇ CL F- 3 ⁇ tr rt 3 CQ Q ⁇ CQ F- CL 3 tr tr ⁇ 03 tr - tr 3 ⁇ p. -. > ⁇ F- PHP ⁇ ⁇ CL CQ 03 - ⁇ cq Ti H 2.
  • P c. P CL F- P PJ F- CQ tr tsi ⁇ o CL F- ⁇ F- ⁇ 3 öd rt rr p F- 03 P ⁇ PJ 3 ⁇ P 3
  • FIG. 1 shows the overall structure of a logic cell array designed according to the invention
  • FIG. 2 shows a more detailed view of this with partial arrays referred to as clusters, VPAEs in between and connection buses.
  • FIG. 3 shows an example of a forward register of a configuration bus.
  • FIG. 4 shows the hierarchy of configuration managers of a logic cell array designed according to the invention
  • Fig. 5 details of a PAE with details of what details can be found in various advance registrations. You can see the three data inputs ABC in the logic cell, the five trigger inputs for the trigger vector Reset Stop Step GO RELoad, the two data outputs H (igh) and L (ow) as well as the status signal outputs UVW and the bus coupling
  • Fig. 6 a the structure of the Logic cell in the block diagram Fig. 6b the structure of a register Fig. 6c the register structure of a backward register for event signals with the new optional look-up table here Fig. 6d a forward register with precharge option Fig.
  • FIG. 7 the detailed structure of a memory cell that has a different input from data changing logic cells (PAEs) 8 has a further detailed view of a backward register in the configuration bus with a look-up table for implementing boolean combinations of trigger vector bits.
  • FIG. 9 shows further processor details, in particular of the buses.
  • FIG. 10 unsynchronized I / O circuit with two buses.
  • FIG. 11 synchronized I / O switch with two buses
  • PAEs arithmetic logic unit processing array element
  • I / O elements input / output cells
  • bus system running through each field
  • CM Configuration managers
  • SCM is assigned to form an overcluster or the XPP, whereby it should be mentioned that it is possible, particularly by using tree-like hierarchical structures, to have more than two fields of processor elements work together; for example, a higher-level configuration manager can be superior to more than just two configuration managers (CM), which in turn are each assigned to a single PAE cluster, and / or it can be provided that a multi-level configuration manager hierarchy is built up, in which, first, actually a configuration manager of the middle level is assigned to the configuration manager (CM) and this in turn is subordinate to one or more hierarchy levels.
  • CM configuration manager
  • the tiling shown is arbitrary in particular lent the arrangement of memories and arithmetic units to one another, so that other arrangements, also with the inclusion of the I / O cells and / or using other elements, are possible without problems and can be easily adapted to a desired special computing task.
  • the illustration shown is also exemplary in that instead of a two-dimensional matrix, a three-dimensional arrangement of individual cells in space is also possible, provided the manufacturing technology of the semiconductor technology used allows this.
  • a single PAE now comprises a large number of inputs and outputs.
  • the individual PAE is provided on the one hand with data inputs and outputs (A, B, C) and on the other hand with control or control inputs and outputs (U, V, W).
  • the PAEs are arranged in horizontal rows, the cells being connected to one another via a bus system; these horizontal bus systems are connected in the middle of the field to the PAEs above or below them, and in the preferred example shown upwards and downwards only with these.
  • the data and status signals ie control signals
  • Example is a RAM-PAE or an ALU-PAE; Accordingly, all types of PAEs are preferably connected to the bus system in the same way and internally interconnected accordingly. In contrast to the illustration, it would in principle even be possible to design the I / O cells for connecting bus lines lying one above the other, but this has not been done in the present case.
  • the PAEs thus serve to forward data, i.e. data to be processed and control or control flow data in the vertical direction.
  • the PAEs are designed so that this forwarding takes place with data changes or unchanged.
  • the data change can initially take place in the actual functional unit of the PAE, for example if it is equipped as an arithmetic logic unit and data is linked in the arithmetic unit; In order to ensure that data are provided sufficiently quickly to be linked in the cell and to optimally utilize the cell clocking, three lines A, B, C are connected with the bit width, which can be processed in the cell, led to the cell, cf. Fig. 5. In particular, a preferred additive input linkage is also possible, which allows operations of the type (A + B) * C to be determined in a time- and space-efficient manner with the cell results. If no data change is required, the data can be directed past the functional unit.
  • data that is needed in a row below can be routed there without being subjected to a change in the PAE.
  • three data words corresponding to three inputs A, B, C are fed in simultaneously, they can be forwarded differently. For example, it is possible to forward only the data word on line C unchanged, while A and B are linked together in the ALU, for example by division A / B.
  • two data words can also be routed past the ALU, while a data word in the ALU is linked, for example, to a constant or another value temporarily stored there.
  • Constants can be configured by the configuration unit (CT / CM). Constants can remain unchanged during the entire operation of a configuration or during operation i.e. the execution of a configuration of new data of the configuration unit (CT / CM) and / or other sources such as PAEs are overwritten ..
  • the data can also be forwarded bypassing the actually data-changing PAE core unit such as the ALU in such a way that the data is nevertheless changed before or during the forwarding.
  • This can be done by changing the data using look-up tables and other linking units, for example units that sort the incoming data words according to their size. These units are preferred between the -t *. ⁇ ⁇ ü-v to to
  • the additional functions which are implemented by the register data forwarding functionality modules, particularly preferably include control operations in the forward register for the data flow, such as multiplexing or demultiplexing, as well as copying and / or other manipulation of data;
  • an ALU functionality for the data flow and / or a Boolean linkage of event signals is preferably implemented, i.e. Trigger signals.
  • the PAE thus consists of modules for manipulating data streams, for operatively linking and / or generating data packets, and for processing by mostly logically linking and generating event packets.
  • each of the input / output modules is provided with a plurality of channels which can work independently in the so-called PORT mode (FIG. 10) or in synchronization with one another in the so-called RAM mode (FIG. 11).
  • Each I / O module can be used by several algorithms using several algorithms at the same time, for which sorting algorithms can also be used.
  • the input / output module (I / O interface) works as an interface to external memory.
  • Write data and address data of each channel are synchronized, i.e. An external write process is only started when both data packets are available.
  • the EA unit sorts packets sent externally back to the internal channels.
  • the switch between write and read mode can e.g. by configuration or e.g. done by signals.

Abstract

Die Erfindung befaßt sich mit einer Zellanordnung mit Zwischenzellstruktur und gibt an, wie eine günstige Segmentierung der Zwischenzellstruktur vorgenommen werden kann, um das Zusammenwirken der Zellen zu verbessern.

Description

"Verfahren und Vorrichtung"
Beschreibung
Die vorliegende Erfindung betrifft das oberbegrifflich Beanspruchte. Damit befaßt sich die vorliegende Erfindung mit Verbesserungen an Logi zellenarrays . Logikzellenarrays, insbesondere auch rekonfigurierbare, sind bekannt. Zur Gattung dieser Bausteine zählen insbesondere sy- stolische Arrays, neuronale Netze, Mehrpozessorsysteme, Prozessoren mit mehreren Rechenwerken und/oder logischen Zellen und/oder kommunikativen/peripheren Zellen (E/A, d.h. 10) , Vernetzungs- und/oder Netzwerkbausteine wie z.B. Crossbar- Schalter, ebenso wie bekannte Bausteine der Gattung FPGA, DPGA, Xputer, Chameleon etc.. Hingewiesen wird in diesem Zusammenhang insbesondere auf die folgenden auf die vorliegenden Anmelder zurückgehenden Schutzrechte, die zu Offenba- rungszwecken durch Bezugnahme vollumfänglich eingegliedert sind: DE 44 16 881, DE 197 81 412, DE 197 81 483, DE 196 54 846, DE 196 54 593, DE 197 04 044, DE 198 80 129, DE 198 61 088, DE 199 80 312, PCT/DE 00/01869, DE 100 36 627, DE 100 2Ϊ 397 DE 101 10 530, DE 101 11 014, PCT/EP 00/10516, EP 01 102 674 sowie Familienmitglieder hierzu. Logikzellen sind somit definiert als beliebige Logik und/oder Arithmetik und/oder Schalter und/oder Speicher und/oder Peripherie beinhaltender Zellen. Während für derartige Systeme im Stand der Technik, insbesondere dem vorstehend zitierten, eine Reihe von Ansätzen bekannt sind, um eine effiziente Verarbeitung von Daten prinzipiell zu ermöglichen, und diese Ansätze auch gut in Hardware- Architekturen implementierbar sind, besteht bei der prakti- sehen Umsetzung dennoch der Wunsch, möglichst günstige Auslegungen zu gewährleisten, die insbesondere platzsparend auf einem Wafer untergebracht werden und/oder energiesparend betrieben werden können;' überdies ist es wünschenswert, besonders vorteilhafte Arten des Betriebes zu finden.
BESTATIGUNGSKOPIE -t^ 4^ > t t o o o φ N CQ CQ DJ 3 r+ t? O S3 α 3 σ N M co DJ d. tu < O. « U3 <1 3 ω CQ tsi tr 03 Ω tsi CO H 3 rt t i tS3 ?V tsi O M
P 3 o O 3 P- F- co H- i > φ P- φ DJ s: P- Ω 3 φ 3 P- φ P- Φ Φ Φ 3 rr 3 Φ 3: tr 3 rt P P- Φ Φ Φ DJ φ rt P-
Hl tr 3 O- et φ Φ et ti et tr r+ DJ 3 tr P φ 3 Φ 3 P P 3 P- DJ 3 Φ P DJ ιQ co 3 3 DJ 3 o σ DJ F- Φ Φ P H- ω Φ Φ N CQ h Φ P tr Φ φ co L-J- Φ 3 ≤ P- ri- 3: et CL P r+ Φ ω P- 3 1 3 Φ
P P- rt H P- φ ω D ti s: CD Φ 3 Φ P- H ^ φ φ Φ Φ ? σ 3 t P- Φ G 3 σ Φ CO ro ro Φ α rt 3 3 r C < φ H h P- P- tr φ o TJ 3 O- iQ 3 DJ Φ CQ Φ 3 P1 C tr ω 3 co O 3 Φ 3 CL φ α Φ DJ • ti Φ Φ H φ it: 3 et Φ 3 3 tr ? P P- et Φ et ;v P 3 3 φ ω P- P 0_ Φ
P Φ P SD P- 3 J H P- Ϊ tr 3 3 Φ o O Q Φ Hi Φ P- DJ Φ r+ et DJ T5 P P- o 3 h-1 P- N Pi 3 Φ P
H 2 3 3 Φ CL s d H DJ ti a tsi φ 3 t? 3 3 3 tr Φ 3: rt O 3 P- P 3 Pi rt 3 co P- Φ 3 O P- P
F- • £! ιQ Φ φ Ω s: h φ *Ö o Φ φ C O: P- 3 O: 3 3 Φ tr 3 3 H- DJ P- CO DJ: P 3 φ rt P et ιQ
O DJ φ φ P 3 t C: tr P. DJ P- r cQ H CQ 3 P- rt 3 Φ P P S et 3 sQ o 3 DJ DJ 3 N IS 3: CL Φ Pl P tr _! 3 3 13 ti Φ co OJ et et H φ 3 tr π P- 3 3 t? co et Φ <! φ 3 Φ et l→ U2 sQ • <1 P tr Φ P- Φ DJ φ φ Hi tu "^ N 10 O H- φ ?T N co DJ Φ 3 DJ sQ N DJ 3 P- P O 3 U-5 3 Φ Φ 3 φ O CO sQ φ P 3 Ω <!
3 3 tsi Ω Ω r+ tr et Ω ιQ Hi P- ιQ P- et Φ P- et O s CL 3 Φ α DJ P- P 3 S 3 . Φ P P-1 DJ tr P- φ φ co ? • tr tr £ H P- tr Φ DJ 3 Φ et P- 3 φ P- 3 φ Φ 3 φ 3 rt- ^Q N Φ tr 3 P- 3 3 Φ
3 co r+ a> < Cd O r+ ti N P- Φ 3 PJ Φ 3 Φ o • P CO J: DJ P 3 ω P- • P co 3 CO 3 p- Φ CL 3 P- Ω CL p- P
N P φ 3 φ < ts • - Q o P- H P- 3 3 φ Ω 3 "^ et 3 3 P- <! rt P- 3 P- rt tr Φ ?r Φ
CΛ Φ F- 3 P ω Ω Φ σ s; σ P- M 3 tr ιQ φ Φ φ Hi ω P_ ιQ ' 3 o 3: Φ 3 P ω rt P 3
3* φ 13 rf- tr tr <1 ιQ tr H φ Φ C Φ 3 Hi CQ CL Φ - 3 ? Ω DJ P- Φ Φ 3 tr P Φ Ω co Φ CQ p- CL -Q 3 3 Φ F- φ O Φ ti r+ a PS 3 O P Φ φ 5 P O: ?V Ω rt P φ P tr φ Φ o Φ
3 r+ 3 P- 3 H- H co φ • rt- D> r+ PJ Φ P 3 P- P_. 3 3 ? tr -< dö C P ?V 3 P- O rt 3
Ti φ sQ 3 α ιQ Ω =ε Hl Φ σ P- φ P- 3 ra p D • 3 3 DJ φ •- tsi 3 P- rt DJ' O < DJ • 3
EU 3 s: Φ Φ φ φ tr H DJ C: 3 tr 3 α tP P- α 3 tr Φ P 3 DJ £ ιQ P 3 . φ 3 - CL o
H cϊ- 3 H- s: φ t3 H * SD: § φ ιQ DJ 3 co • 3 rt- N tr o 3 DJ 3 P CQ D 3 DJ Ω
DJ P J ti Ω H- P- 3 rt 3 Φ r+ α tr Ti Φ td 3 σ Φ DJ sQ P fr P- 3 3 P tr
3 3 DJ: Φ φ tr t5 ^ CQ a α ≤. Φ et φ DJ Φ P- P D) 3 3 N Φ H1 Φ t 3 φ Φ 3 P- P- s
3 Φ 3 P_, o ^ P- DJ P- P- Φ 3 3 P- 3 Φ P_ 3 P- co 3: 3 P- CQ Φ 3 O 3 : P- CO N 3 P-
Φ Hi 3 tsi iQ t7- f" H- 3 co ω Φ co UQ G Φ tr 3 rt- Φ Ω P 3 φ 3 IQ p- Φ 3 3 Φ Ό 3 N P- Φ
P1 DJ ** =ε co P- pd ιQ ιQ 3 n- ^< tr P φ sQ Φ tr Φ P- Φ ri- P- tr Hi Φ P- 3 φ N P
Φ &> P- 3 φ φ P c Φ σ φ Φ r+ 3 φ 3 3 " co φ co 3S D3 r+ 3 . φ P- rt DJ 3 P 3 P co P 3 P-
P rt 3 DJ tr P- ti Φ ti 3 r+ J <! DJ . P s: Di: o 3 co P- 3 P- Φ 3 3 3 rt tr φ ιQ
3 Ω φ t P- P- Φ φ t-t- r+ <! r+ s: 3 DJ 3 t i - P- P co vQ 3 P- P u3 DJ 3 co ? α 0-, ^ P- Φ ≤ rt ? ti 3 Φ P1 O P Φ 3 P 3 Ω Φ P-, 1 φ s: Φ DJ > DJ Φ ? Φ -^ 3 Φ DJ φ φ
DJ DJ ω Φ Φ r+ O Φ fU φ a 3 DJ P h r P- tr PL i tr1 P P- 3 3 3 P- DJ 3 α CL rt P 3 tr P- rt tr o 3 P Φ < H ti et ≤ 3 C: sQ Φ Ω P Φ P- 3 Φ φ Φ CL N sQ 3 rt Φ Φ ≤ tr 3: Φ rt
Φ co 3 O P- P- tr D> C Φ φ r+ tr P- Φ 3 3 P- n ö- Φ DJ Φ Φ P- s: ω P DJ Φ O 3 Φ
3 H- 3 rt- K 3 φ N O Φ s: Φ C O 3 3 Hi vQ P r+ T) ω Φ P tr 3 3 O Φ Φ P- •» 3
1 φ φ F- S 13 C ti P- Ω tr SQ »* 3 Φ Hl 3 α. o 3 G p- 3 3 P- CL 3 α rt φ tr1 =ε tr 3 SD tr1 • tr" φ rt tr CQ 3 Φ P o CQ tr 3 φ Φ "« σ Φ rt o DJ Φ 3 CL σ φ F- P p- t DJ O ^ ^ O P P- N o_ P Hl DJ P Φ P- ιQ 3 3 CL Φ P- Φ Φ P t i 3 3 DJ φ
F- Φ Φ Φ φ P ιQ ' Φ Φ ιQ Q. J φ 3 Φ p- ^\ α o 3 Ω IQ Φ 3 N Hi CL Φ K 3 P P rt Φ 3 £p P- rt- H 3 P- s; H- H- S, € P- Φ IQ h P- φ o Φ P Hi 3 σ tr φ 3 Q, • DJ . P DJ Φ Po Φ Φ D
3 α Φ r+ Φ ?^ Φ SU: 0- ΪV 3 c H, α r+ 3 3 DJ Φ φ ^- tu tr 3 P O 3 Φ P- Φ co
3 Φ <! Φ F- N tr a N a O P- φ Φ Φ CL 3 rt P P- N o • P-1 • tr1 3 P P Φ φ α φ P- ^<
^ P 1-3 φ 3 co Φ cα H Φ ι-3 ιQ H Φ Φ P- H P Φ iQ (t iQ IQ 3 O-, CQ Φ rt < CL tsi tr P DJ 3 co
Φ Φ P φ H i3 PJ O H O α o P- 3 tr H1 3 3 Φ 3 φ P- et P- • P- Φ Φ DJ ≤ rt w Φ rt
3 Q F- 3 ιQ CQ φ tr ? J 3 Φ Φ P- P- D- CQ Φ DJ P 3 Φ << rt Φ P h-1 H" ^ Φ O Φ
Φ F- Φ Φ CO P- et Φ Φ c H π K P co co Ω to DJ Φ et et P- *Ό 3 ro rt P- DJ 3 3 < 3
3 co 1 rt Hl P- 3 Φ ti a Hi DJ: tr 3 3 3 CD Φ 3 fυ 3 P- 3 3 N P- Φ Φ rt P- Φ
3 DJ W et 3: o et p- DJ 1 N P- tsi Ü co 3 φ CQ 3 Ti Φ 3 o Φ ω ιQ co DJ Ω 3 3 Φ N 3 φ 3
CL 3 3 Φ tr tr 3 N Φ CO H ?o c Ω φ 3 φ 3: 3 Hi H 3 3 r+ co P Ω Φ o tr tr Φ P "^ S 3 rt co P r+ φ 3 et H P- ≤ tr p- Φ 3 CO P Hi tr DJ rt P- Φ tr 3 Φ Φ 3 <! P- P- N DJ tr co ω rt tr ^ DJ 3 ro ri- 3 P_. DJ N S 3 - et M P to P Φ s: CΛ ? DJ 3
F- 3 co Φ tr h co < iQ 3 3 *>• Φ φ td * s: Φ iß 3: 3 Φ 3 Φ TJ rt co 3 φ tr M P Φ Ω DJ tr CO
Φ co •< <! Φ φ P- C CQ 1 DJ D) 3 3 3 » 3 Φ tr T3 P- P P- DJ •< P- O: F- DJ P DJ 3 tr rt co O 3 F- sΩ co 3 "«• Φ Ω C co 3 3 DJ Φ Hi 3 tr P Ti 3 ιQ 3 P-" iQ P 3 φ P- CL
N P_ fi- 3 3 φ φ 3 r 3 tr 3 Φ N α So P (U: DJ t Φ DJ P- C P1 rt Φ tr 3 O < Φ p- φ F- φ tr P- • r+ Φ α 3 Φ <! 3 P- Co Co et 3 3 O co P- Φ σ Φ Φ 3 o 3
1 φ 3 3 3 o a ** P- o P- Φ Φ O 3 1 3 < Ω 1 3 3 1 P- P- 3 φ 1 1 tr fl- 3 et tr 3 1 o tr 3 Φ 1 3 φ Φ 1 P 1 P 3 3 Φ 3
sätzlich notwendigen Protokollleitungen; die Kommunikation eines Paares dicht beieinander liegenden Logikzellen stört dann die Kommunikation eines anderen, dicht beieinander liegenden Paares nicht. So kann die über das Bussystem übertra- gene Datenrate wesentlich gesteigert werden.
Problematisch ist allerdings, daß, wenn derartige Bussystemen, etwa in CMOS-Technik auf Haϊbleiterchips integriert werden, der Aufbau typisch komplex und der Betrieb energetisch ungünstig ist.
Die Aufgabe der vorliegenden Erfindung besteht darin, Neues für die gewerbliche Anwendung bereitzustellen.
Die Lösung dieser Aufgabe wird in unabhängiger Form beansprucht. Bevorzugte Ausführungsformen finden sich in den Unteransprüchen .
Ein erster wesentlicher Aspekt der vorliegenden Erfindung schlägt somit vor, daß bei einer Logikzellenanordnung mit einer Anzahl Logikzellen und einem segmentierten Bussystem für die Logikzellenkommunikation, vorgesehen ist, daß das Bussystem unterschiedliche Segmentlinien mit kürzeren und längeren Segmenten zur Verbindung zweier Punkte umfaßt, um die Anzahl zu durchlaufender Buselemente bei auseinander beabstandeten Kommunikationsstart- und Endpunkten gering halten zu können.
Damit nutzt die vorliegende Erfindung in einem ersten Grund- gedanken, daß sich durch Ausbildung der Busse mit als einfache Leitung gestalteten Segmenten großer Länge für die Überbrückung großer Strecken in einer Logikzellenanordung eine besonders einfache Ausgestaltung und ein besonders sparsamer Betrieb ergibt. Indem zugleich kurze Segmentlinien vorgese- hen werden, ist sichergestellt, daß dennoch alle Punkte wie erforderlich ansprechbar sind.
Bevorzugt sind die Segmentlinien jeweils aus einer Mehrzahl paralleler Leitungen gebildet sind, deren Anzahl durch die Bus-Breite und/oder das Busprotokoll bestimmt ist. Es ist also jedes Segment durch ein Bündel paralleler Leitungen gebildet, so wie dies per se aus dem Stand der Technik bekannt ist. Es versteht sich, daß dann alle Leitungen eines Segmentes im wesentlichen die selben Längen aufweisen; im wesent- liehen bedeutet dabei, daß die Leitungen eines Leitungsbündels alle zu ein und derselben Endpunktlinie wie einem Dateneingang einer Logikzelle geführt sein können, wo sie an die ihnen bitweise zugeordneten Eingangsglieder gelegt werden können.
Es ist bevorzugt, wenn an datenverändernde Logikzellen wie Recheneinheiten drei der für die verarbeitete Bitbreite erforderlichen Leitungsbündel als Datenzuführungsleitungen zugeführt sind. Dies erlaubt es, innerhalb der Zelle eine Verknüpfung von Operanden A, B, C der Art AxB+C vorzunehmen. Diese Operation ist im Bereich digitaler Signalverarbeitung von besonderer Bedeutung und die Busstruktur somit für Lo- gikzellenarrays zum Aufbau echtzeitrekonfigurierbarer DSP- Arrays besonders geeignet.
Es ist insbesondere bei Logikzellenanordnung, mit denen eine arithmetisch-multiplikative Verknüpfung von Operanden vorgenommen werden kann, besonders bevorzugt, wenn aus den Zellen wenigstens zwei der für die verarbeitete Bitbreite erforderlichen Leitungsbündel für Daten weggeführt sind, insbesondere mit einem Leitungsbündel für höherwertige und einem Lei- tungsbündel für niederwertigere Bits; so kann bei einer Da- tenwortbreite von 32 Bit ein 64 Bit breiter Ausgang erzeugt werden, um das Ergebnis einer Multiplikation in voller Breite auszugeben.
Bei rekonfigurierbaren Logikzellen ist es bevorzugt, wenn insbesondere über das segmentierbare Bussystem Steuereingänge ansprechbar sind, die derart angeordnet sind, daß wenigstens die Steuersignale zur Ablaufsteuerung in der Logikzelle, wie z.B. die Signale Reset, Step, Stop, Go und Reload in die Zelle übertragbar sind. Mit diesen wird ausgelöst und/oder ermöglicht ein "Zurücksetzen, eine Umkonfigurierung und eine Aktivierung. Dazu kann eine entsprechende Anzahl von Bitleitungen vorgesehen werden; bevorzugt werden daher wenigstens zwei Bit breite Datenleitungen für Steuersi- gnaleingänge vorgesehen. Es ist besonders bevorzugt, wenn jedem der steuernden Signale ein separater Signaleingang zugeordnet ist; alternativ kann eine Eingangsverknüpfungschaltung auf einer mehreren Bit breiten Statusleitung für ein ordnungsgemäßes Ansprechen der Zelle sorgen.Diese Steuersi- gnaleingänge sind insofern Steuersignaleingänge, als über sie die konfigfurations- und/oder Rekonfigurationssteuernden (Kontrollfluß-) Signale, insbesondere Triggersignale wie aus dem vorerwähnten Stand der Technik bekannt, an die Zelle geleitet werden können. Die eigentliche Kommunikation der Zel- le mit der oder einer umkonfigurierenden Einheit wie einem Konfigurationsmänager (CT bzw. CM) kann dabei in per se be- kannter Weise z.B. über das sog. Ready/Ack/Rej -Protokoll erfolgen, das eine Umkonfiguration der Zelle nur unter bestimmten Bedingungen erlaubt. Für die Einzelheiten dieser Protokolle wird auf die einleitend durch Bezugnahme vollum- fänglich eingegliederten Schutzrechte des Anmelders und jedwede weiteren öffentlich zugänglichen Dokumente über die XPP/VPU-Architektur verwiesen.
Das Bussystem kann Segmente zur Verbindung der Logikzellen untereinander umfassen; dies ist der typische Fall und deshalb von besonderer Bedeutung, weil innerhalb des Logikzel- lenarrays ein besonders hoher und effizienter Datendurchsatz benötigt wird, ohne daß sich der Prozessorbaustein etwa durch hohe Verlustleistungen aufheizen soll. Hier ist die vorliegende Erfindung besonders effizient einsetzbar.
Alternativ und/oder zusätzlich kann das Bussystem an interne und/oder externe die Logikzellen konfigurierenden und/oder rekonfigurierenden Einheiten geführt sein; die Busse können insbesondere an einer Vielzahl von datenverarbeitenden und/oder speichernden Logikzellen vorbei zu einer oder mehreren solchen (re-) konfigurierenden Einheiten geführt sein, so daß entweder eine Kommunikation der Zellen untereinander und/oder mit der oder einer konfigurierend Einheit möglich ist. Es sei in diesem Zusammenhang erwähnt, daß prinzipiell ein simultanes Aussenden von Informationen an mehrere Empfänger möglich ist, etwa, um im Falle des Bootens alle Zellen gleichzeitig zurückzusetzen. Die Busstruktur kann dafür entsprechend ausgebildet sein.
Weiter ist es bevorzugt und möglich, wenn das Bussystem zu l/θ-Schnittstellen und/oder zu externen Datenspeichern geführt ist. Es kann mit anderen Worten die Segmentierungs- struktur sowohl innerhalb als auch außerhalb des Logikzel- lenfeldes mit Gewinn genutzt werden.
I/O-Schnittstellen übertragen bausteininterne Bussysteme nach extern. Dabei werden beliebige Bussysteme ggf. zeitlich alternierend zur externen Aus- und/oder Eingabe geschaltet. Zusätzlich kann die Möglichkeit bestehen mehrere Bussysteme derart zusammenzufassen, dass diese aufeinander synchronisiert werden. Beispielsweise können je zwei Ausgabebussysteme oder ein Eingabebus und ein Ausgabebus zusammen synchronisiert werden.
In einer praktischen Ausführung des Bussystem sind eine Reihe von Leitungszwischenelemente vorgesehen; Leitung meint *- > t t o o O Q N W 3= Φ Hl CQ 3 CQ tr 3 tr ≤ CQ < Hl φ rt α CQ rt 3= 3 CQ CQ CL tr O rt tr O: CQ Hl rt 01 Hi \~> Φ N CL tr
Φ Φ 3 ty p Φ DJ Φ 3 Φ φ φ Φ φ Ti F- 3= F- F- F- 3 F- tr F- Φ Φ Φ φ Φ CL 3 Φ Hl F- O Φ φ O Φ φ F- 3 F- p P" 3 Φ tr P 3 P tr p 3 3 F- Φ Φ 3^ 3 < Φ PJ 3 Φ ΪY 3 P CQ rt F- φ P < Hl pr P P P F- 3 F- P Φ rt P" Pi p 0= CL P φ rt F- F1 P φ J P J - Φ 3 Φ rt P o 3 N CL 3 tr CL tr rt DJ 01 Ω P
• Φ rt t φ CQ ö C P- N CQ φ CQ IS1 φ S tr1 F1 rt P φ 3 DJ P Φ Φ φ -~. Φ φ F- 3 3 Ω tr tr
3 C rt 3 D) DJ P1 rt 3 Φ P Φ PJ 3 φ 3 Φ PJ Φ CL F- 3= 3 Hi φ 3 N rt F" P 3 P 3 3 CL tr CQ Φ
K CL φ O. 3 3 PJ 3 F- 3 tr CL F- F- 3 F- O tr to rt t i Φ F- Hi 3 F1 3 01 3 CL CQ Φ Φ Φ F-
CQ 3 Φ 3 Q Φ Φ 3 3 F- DJ: 3 ? • Φ 3 rt rt Hi Φ 3 Φ φ Φ Φ CQ 3 CQ CQ CQ Φ 3 o 3 3 3 CQ P 3 tr
F- P F- PI 3 p CQ CQ Ω 0= 3 φ F- 3 t i 3 P CQ 3 t-1 rt φ Φ rt Φ 3 CQ 3 CQ 3 tsi Φ φ F-
CQ Ω ω Ω 3 3 CQ et tr 3 < H Ti 3 φ Ti CQ ro 3 tr F- Hl pr CL Φ CQ s N FJ 3 3 φ tr α 3 tr CL to Φ CQ CQ α 3 o tr1 PJ CQ F- PJ Ω P ≤ φ Φ Φ φ DJ PJ 3 Φ Φ DJ ^^ 3 CQ F- 3 Φ L CQ
P- rt PJ CQ Φ 3= tr O F- rt F- Φ 3 Φ tö Φ CQ rt CQ tr Hi Φ 3 P 3 CQ 3 3 3 F1 F- 3 0 CQ CQ 3 Φ tr rt N 3 Ω F- F. 3 C Φ 3 F- Φ X N Φ CQ D) 0 F1 rt Hi Φ CL rr F- O CL 3 3 CL <! to Ω Φ Φ Φ
CQ Φ IQ £ pt CQ CL CL F- α CQ N rt F- Φ S 3 3 H M Ω Φ 0 3= 3 Φ rt CL Φ φ 0 Ω t 0 3 S LQ
DJ F- 3 φ D) α 3 Φ DJ Φ PJ F- 3 tr P F- 3 r CQ tr tr - P ≤ Φ P? CQ CL P 3 tr φ P rt Φ o
P 3 P J DJ N -Φ Q rt F1 φ 3 Φ CQ CQ Φ φ Φ ? CQ φ Φ Φ φ P 0 Φ DJ 3 CL Φ rt 3
D 3 . — . DJ rt 3 3 et < Φ Φ Φ CQ -t LQ 3 Ω Pl: P 3 DJ φ P 0 P F- 3 ^ P PJ tr1 F" Φ 3 DJ CL
3 <J P1 3 C Φ Hl P Φ 3 H Φ Φ <! 3 tr 3 CL Φ 3 3 tr T CL 3 £ Hl o 3 0 rt Φ 3 F" φ
Hl 0 DJ Hl F- 3 DJ P DJ Hl tr1 3 3 0 Hl Φ CQ Φ 3 m F- 3 ω O φ Φ Φ F- 3 to CL CQ Φ Φ rt Φ F" P p< et φ φ C tr 3 tr D) 3= Φ 3 PJ 3 CQ P F- 0 3 CQ Φ CL 3 3 3 P CQ Hi Ω φ F- P 3 Φ F- F1 Φ tr P1 Φ 3 F- Φ 3 p-1 F- N 3 F- F- DJ CQ Φ 3 F" φ 3= 0 CQ F- Hi CL 3 F- „tr P pr *" Φ 3 3 F-
F- 3 Q 3 P PT : Φ 3 Pi rt 3 3 txi ω H α α P- F1 P tr F1 3 Φ F- CQ O φ P CQ DJ φ N 3 rt 3 Φ
3 "CQ Ω P- Φ 3 3 CL P Φ 3 CQ Hl F- Φ Φ Φ PJ 3 . Φ Φ CQ 0 0 3 F- 3 F" P Φ CL rt t"1 F- F- Q Φ 01 CQ
"^ tö M 3 Hl Φ 3 CL 3 3 σ N Φ 3 3 p rt F- < P -> 3 I . 3 F" 3 • Φ P rt F1 F- Φ Φ CQ φ 3
Φ 3 rt DJ Φ 3 Hl rt 3 Hl φ CQ Φ 3 φ Φ Φ t?d F- CL rt 0 P Ti P DJ Φ td F" Φ F- O φ
$, 3 ^ ^ 3 CQ Ti rt • Φ 3 3 Q tn CQ Φ 3 ω 3 P CQ Φ F- 3 F1 3 F- ^. F- α φ rt P P- Φ P? rt F1 F- 3
F- rt rr F- Hi £ 3 3 N 0 Ω 3 3 rt 3 tr rt H Φ 3 F- 3 Φ F1 F- 3 F- 3 3 F- DJ 3 Ω 3
Φ IS1 F- DJ N ω DJ CL 3 Φ • tu rt ≤ 3 tr 3 Φ CQ Φ P tsi ffl C 3 3 P F- Φ φ CL 0 N tr 3 3 3 tr tr1 to rt 3 tr φ rt 3 Φ Φ F. 3 Φ F- C PJ ≤ € PJ PJ F- 3 φ 3 P CQ Φ 3 • φ 3 ! 3 CQ Φ φ φ
Φ Φ F- Φ CQ P 3 CL s; CQ P ffi Φ F- φ p Φ Φ 3 tr PJ tr Φ F- 3 CQ 3 CQ öd F- 3 tr Φ F- F-
3 =S C p rt p CQ 3 Φ Φ CQ Ω F rt Φ F- 0= F- 3 P 3 3 Φ 3 pr CL σ Hi Φ 3 • rt CL Φ Φ 3 a 3 rt
Φ Φ 3 tr ö 3 F- CQ Ω tr φ Φ 3 3 rt 3 CL Ω F- J Φ Φ Φ P td D) Φ \ 01 CQ F1 φ Φ p. F. . L „—. Φ D) CL rt φ tr Φ 3 t* 3 3 CL φ CL < tr 3 rt 3 CQ CQ H F- 3 F- 3 - • 0 0 DJ Φ 3 P
CL L F- CL t i CQ rt F- Φ tr F- 3 5> 0 CQ Φ 3 3 J o < P- F- 0 rt DJ 3 DJ 3 CL 3 m 3 3
DJ Φ CL Φ Φ =s rt Φ Φ CL p J Φ Φ PJ= 3 CQ P- 3 CQ O 3 3 tr o rt o O 3 tsi 3 tr CQ < φ CL F- CQ φ K Φ ta> 3 DJ P1 P- DJ: 3 PJ CL F1 tr 3 F- CQ Φ CL 3 F- Φ P 3 CL CL 3 tr φ Φ O P Φ Ω Φ 3 DJ P ω tSJ DJ CQ rt tr tΛ ? rt r-> Φ CL ? 3 3 3 Φ 3 rt to < tr P? Φ φ -> rr F- P 3 P P tr 0 rt F1 CQ tr p? S ^ Ω F- DJ Φ DJ φ F- 3 tr N ) Φ P CL φ 0 PJ 3= N P P Φ rt CQ CQ CQ CL Φ P Φ tr rt
F- 0= > P- tr CQ 3 F- CL 3 3 Ω φ J 0 Φ F" F- <J C CQ P 3 P ≤ φ CQ Φ Ti Φ F- tsi CL - φ φ 3 P CQ φ 3 F- 3 tr 3 P CL F1 rt O O φ 3 tsi L N F- P? Φ CQ CQ P tr Φ F- 3 3 φ P
P 3 P. Ω 3 3 N Φ £ φ rt Φ Φ F1 <! Φ p < CL p Φ 3 Φ Φ CQ 0 P? 3 Φ CL φ Φ 3 3 Φ CL F-
Φ DJ 3- tr tQ Q^ F- DJ tr Φ Φ H Φ O p CQ Φ Φ 3 CQ 3 P Ω 3 J •> F- CQ • Ω 3 ^ rt F- rt ^! s 3 ^ Φ F- φ Φ 3 α Φ P N - 3 3 Φ P P t> rr rt CQ Φ tr rt 3 3 Ω tr tr L 0 Φ Φ Φ
F- 3 co tr l-> LQ PJ P- CL 3 fö F- 3 CQ J φ φ 3 Φ P 3 £ Q tr . Φ Φ 3 3 F- CQ P DJ
Φ tr N DJ tr Φ et φ Hl φ Φ 3 3 Φ 3 φ P Φ F- F- < F- 3 O F- tr F1 3 3 3 Oi 3 F- N C ω
CL Q N Φ Φ Φ . — . 3 Φ ω 3 CQ CQ 3 3 P- CL - tr CQ IQ 3 O 3 O P-1 CL Φ Φ 0 Φ 3 Ti Φ 3 £ DJ ω
Φ P- 3 F- F- rt P 3 3 3 DJ F- Φ CL 3 ^^ Φ Φ rt F- P CL t i F1 Φ CQ CQ F- DJ ^! 3 P 3 C F- Hi φ
P 3 rt 3 Φ 3= 3 CD < CQ tr ω φ ^^ φ o 3 P- P 3 Φ CQ 3 φ ≤ F- P CL o CQ 3 3 0 F- Φ Ol φ ^
3 CL 3 Ω CL rt Φ CQ tr Φ et ω CQ O P CL rt DJ 3 3 Φ Φ P Φ Φ F- 3 Φ Φ Hl 3 pr Ω 3- Ω P
3 Φ tr σ pr P P φ F- 3 Φ F- CL φ 5 3 3 CQ CQ " F- P n Φ CL 3 P rt DJ tr DJ ω tr £
< F- F- DJ ≤ CQ CQ φ J 3 CQ . p; 3 PJ φ P P Φ 3 3 CQ CL Φ P Φ o φ Φ P rt Φ 3 Φ Φ F-
Φ Φ 3 ffl rt Φ F- Φ Ω P - 3 3 P Φ F CQ <: F- tr Φ PJ= tr 3 3 ω P O CL F- O F- 3 CL F- 3 f Φ
F- P N Φ P Ω CQ ? tr Φ CQ <! h-1 Hl F- PJ CL Φ φ Φ Φ P 3 Φ CL Ti 3 Φ CL DJ 3 F1 o Φ Φ
3 p Φ N 3 CL tr Φ Φ Φ CL F- o 0 rt ≤ rt P1 Φ PJ F- P 3 Φ CQ DJ Φ F- m ^ φ CQ Φ F" 3 PJ H-1 C (_ι. F- Φ
P- P" 3 Ti Φ rt tr 3 F- F- 3 p DJ Φ φ 3 rt 3 3 3 F" ! . P Φ tr F1 CQ p 3 3 3 Φ Φ rt F- e 3 3 F. DJ 3 F- Φ rt φ * CQ 3 P- F- 3 Φ • Φ 3 O 3 P CQ td φ rt £ tr* > F- CL Hi 3 3 3 φ p? CQ 3 3 N 0= Φ 3 rt CQ P ß CQ 3 Φ F1 Φ rt F- P P F- CQ O 3 rt Φ 3 N 3 Φ
^ DJ Φ rt Φ D) 3 F- 3 CQ tsi φ Φ 3 P- 0 rt 3 P DJ= 3 DJ 3 3 Φ Φ P > 3 ^ CQ
DJ= 3 rt 3 3 CQ Φ Φ 3 J DJ Ti 3 3 3 3 Φ CQ
1 3 F- 1
-P J^ ) ω to to o > φ CL F- Φ 3 < 3 Pt CQ CL ω tr1 3 H H P 3 Φ tα CQ € CL F- F1 P tr to 03 F1 N td Hl φ Ω 3 D : rt s£ F1 CL CQ rt 3 3 P F- o O: 3 Φ Φ Φ Φ Φ Φ Φ P 3 F- 3 Φ φ 3 3 DJ Φ Φ Φ rt 3 3 F- 3= F- tr Φ 3 tr 3 F- Φ DJ φ
P H rt 3 CQ 3* P P- F- 03 3 3 CQ F- CL 3 CQ F- P P Ti CQ 3 < CQ Φ 3 CQ 3 tr 3 P F- 03 3 3 P CQ Q 3
DJ Ω CL PJ F1 Φ φ 3 rt rt - rt Q ~\ φ CQ 3 CL Ω F-1 01 CL o F- P CQ rt LQ P Φ o rt Ti F1 LQ CL rt tr F- 3 pt Φ F- F- 3 F- 3 =3 F- CQ 0 P φ » φ tr Φ Φ Φ P 01 tr Φ - J rt 3 3 Φ p F- • Φ to N Q Φ tr 3= F- Ω 3 Ω 3 φ Φ F- CQ Φ CL 3 3 3 3 CQ N rt φ 3 3 φ P φ Ω CQ 3 φ ≤
P* Φ 01 rt P 3 tr φ tr α CQ F- P 3 φ P φ O CQ • < Φ 3 Φ CL to CQ 01 tsi CQ Ω tr Φ td CQ F-
Φ 3 Φ N Φ P F- 03 rt Φ CQ F- < P CL IS] φ Φ 3 CQ tO CQ P F- Φ F- F- F- tr Φ 03 Ol Lx) F- 03
F- rt Φ φ P Ol φ N Φ 3 tr 3 Φ Φ 3 3 Pt P rt F- Φ rt 3 C CQ CL 3 Φ CQ Φ CQ rt Φ CQ Ω
Ω ω tr CQ P tr φ CQ ≤ P • φ •• Pt CL P P J 3 F1 F- Ω CQ Φ t CQ F- F- Φ CL F1 3 rt 3 Φ F- CL rt tr tr T. Φ ~ φ to PJ: Φ F- F- Φ CQ et φ 3 CQ DJ φ tr F- 3 O: rt Φ Ol P Ti Pt ≤; 3 03 F- φ Φ
Φ P 3 Φ 3 CQ 3 pt Ol 0 ω 0 CQ Φ = tr CQ P CQ 3 Φ rr Oi 3 0 Φ DJ F- Φ rt 3 P 3 φ o tr CQ CQ o DJ Ω 3 o P CQ F- tr tsi Φ Φ φ Ti rr < 3 öd Φ Φ PJ 3 3 l 3 Φ P CQ to Ω F- Φ to 3 Ol 3 3 tr tr CL o Φ Φ 3 Φ < CQ P 3 P Φ DJ Φ α DJ P F1 Pt 3 Hl rt CL 3 N tr1
F- tr Ω F- Φ Φ CL CL 3 φ Φ Φ F" 3 3 Φ P Φ 0 3 0 P P 3 φ 3 tr 0- et Φ 03 Φ PJ 3 • DJ Q Φ tr CQ 3 φ Φ F- 3 - < P CQ P rt F- 3 3 3 tr F- F1 rt Φ _ - φ 0 .3 F- Ω F- £ - -3 CQ . öd rt
3 3 et 3 rt F- P Φ F- φ 0 Φ Ω s = P CL CQ 3 DJ DJ PJ Φ F- 3 N 3 O 3 F- 3 Φ . Φ
DJ CL 3 0 Φ F" 3 CQ 3 F" P tr Pt 3 DJ o Φ CL Φ 3 3 φ ^ F- 3 φ 3 < Φ P 3 3 φ 3 3 3 F- Φ Φ CQ Φ tsi Φ 0= CL Φ CQ Ti P Φ 3 CQ rt s tsi F" N ts. F- O < Ti 3 CL ≤ 3 Ω
F1 CQ 3 rt 3 01 tr F- tr 3 3 Φ 3 Φ F- 3 Φ φ F- CO. Hl LQ Φ φ Φ N 3 Φ 3 CQ 3 0 F- - 3= 3 3
DJ ! ! 3 Φ F- Φ 3 Φ Φ CQ P < 3 P tr 3 P 3 0 P Φ F- F- φ CQ H φ Φ F1 -> I . 3 F-
3 - O 3 3 φ α <: 03 3 rt J: Φ Φ 3 Φ CQ PJ t Hl Φ tr DJ F" rt Φ F" € 'öd F" Φ 0 N ω Φ 3
Hi 3 CL F- DJ o ω o rt 3 P 3 3 3 DJ DJ t F- F- F" Ol 01 rt Φ < PJ: F- ^ P 3 • Ω 3 3
N tr pt 3 3 et P rt 3 CQ CL Pt CQ < <! CL 3 Ω DJ F1 CQ <! rt E J φ tr rt CQ Hi öd tr CQ 3 CL
Φ F- tr DJ 3 F- Φ N PJ CL Pt -~ Φ 3 CL 0 0 Φ 3 tr 3 3 CL 0 Φ 0= φ <! P P CQ Φ Φ F- • φ Φ rt
F- 3 et CL rt 3 3 P Φ o= Φ P 3= F- PJ 3 3 3 Φ 3 3 Φ DJ CL P p 3 O tr F1 F- 3 cq 3 3- Φ ö rr PJ F- 3= CQ Pt P 3 F- tr Ti Φ 3 Φ P CL rt CL Φ 3 Φ » P F- Φ 3 3 Φ 3 CL 03 P P Φ
Φ rt P1 0 0 F" tr rt Φ Φ 3 Ω DJ Hi Ol tr1 to PJ F- 3 CL P F- 3 CQ 3 F- 3 P P 3 £
3 F- PJ: 3 CL DJ= φ Φ 01 Φ tr P 3 10 0 rr F" 3 Φ 3 CQ F- Φ CL £ Φ CL Ol rt to F- DJ P Φ F1 < DJ
O 3 Φ 3 P 3 Hi 3 Hi Φ 3 Φ o= CQ J CQ Φ rt F- φ φ rt CL Φ tr 3 rt Φ Φ Φ rt Ω P J o ><
DJ 3 CQ Φ P CQ et to 3= PJ CQ CQ 03 F- rt Φ tu P rt rt F- P Φ Φ 01 F- φ 3 φ P CQ P F- tr rt 3 P
3 CQ F- Φ P F- P f F1 3 Φ F- φ Pt 3 tr Φ Pt O 3 φ F- 3 Φ 3 CQ 3 CQ F- rt O ^ CQ tr Φ
Ω Pt 3 3 P DJ DJ CQ Φ P1 DJ 3 Ol 3 tsi 01 P CQ 3 CQ -• 3 F1 F- - Ω P > Φ 3 Φ Φ Φ P tr 3 CL Φ 3 Φ CQ P 3 S F- Ol Ω et - φ Ol PJ F- 3= CL Φ CL £ . SL 3 Q <! tr rt CQ F- ≤ P Q Hi
P Φ P CQ 3 3 F- DJ 3 rt tr 3 Φ F" F- F- CQ Ti F- P tr φ φ Φ O F- O ≡3 F- Φ Üd 3 3 Φ rt 0
CL N P Φ 3 PJ 3 3 CQ 3 P CL F1 CQ 01 rt Hi Φ F- φ ω F- P Pt CQ 3 φ Φ P Φ PJ φ 3 et) F- P
PJ Φ CQ Pt PJ CQ 3 DJ rt 3 PJ Ω CL • Φ 3 Ω Φ 3 3 ra Oi CL 0= tr rt 3 CL Hi 3 3 3 3 CL
3 P Ol P Φ 3 CQ et 3 F- CQ tr tr ^--. tr tr 3 PJ tr P 3 tr1 CQ rt 3 φ Φ 3 o Φ 3 < Φ PJ « Ol 3 φ
3 Φ 0= tr Hl Ti Φ Hi Ti CQ J 0 φ • CQ 0 Φ F- 3 3 3 Ω Φ F- F- O tr LQ o CL CQ rt P
3 LΛ P Hl Hi F" rt S 3 CL <! 01 Φ N CL &Q CQ 3 3 CL F- Φ tr 01 3 öd Ω P pj Φ 3 F- rt Φ F"
< 3 tr Φ ΓΪ Φ P> CL DJ: φ P φ rt Φ 0 tr F- 3 3 DJ PJ F- 3 -\ 3 t 3 Hi Φ 3 tr N φ P rt φ P 3 F-
O CL Φ P F- CL Φ Ω X Φ F- DJ P P Φ CQ - tsi 3 Pt to rt O o= - P tr 3 CQ Φ 3 - P Φ Ω
P 3 Φ <! 3 Φ P tr J F- oi tr tsi F- 3 <! 3 CQ si Ω φ CL φ 3 φ φ CQ P Ol DJ o t Ω 3 tr
N P" 3 O Φ CQ φ 3 tr φ Φ 3 3 PJ CL Φ Hi Φ tr φ F- 3 CL Α CQ t i Φ Φ P CL F" φ Pt 3
3 DJ ω P td P 0 φ F" PJ CQ ω F1 F- P DJ CQ PJ < P 3 Φ 3 3 0 φ s! tr tr Φ F" LQ Φ CL 03
CQ 3 3 IS. N to Φ P 3 P P tsi P" Ω rt 3 F- Φ Pt 3 PJ F1 Φ φ 3 P φ 3 P Φ Φ Φ P Φ F- Φ
Φ CQ 01 DJ 3 Φ F- Hi CL 3 Φ tr Ol Ol 3 Ol tr Φ rt P 3 P • Ω 3 CL F1 3= P 3 F- F- 03 N 0 F- tr Φ ω tr 01 CQ 3 F- . — . 3 < Ol 3 03 CL 01 F- CL 3= CQ φ 3 3 Pt 3 tr rr φ PJ Ω rt rt £ 3 rt 3 CL 3 φ P rt F1 φ 3 Φ 3 Hi 3 0 Ω - Ω J Φ Φ Φ Ti Φ 3 Ol 3 3 ' P1 tr Φ P 3 Pt F- Φ F- t φ CQ Φ
3 P tr Φ 3 CL DJ 3 P tr tr ES3 3 P 3 Hl tr rt LQ 3= rt φ CL CQ ω ≤ CQ 3 3 Φ φ P Φ p Pt to 3 <; Φ 3 3 3 CQ CQ J N PJ 3 Φ φ F- Φ P CD Ti F- 01 F- to CQ PJ: Pt 3 CL F- N CQ DJ φ ? o 3 et s; 3 o Φ φ 3 3 Hl 3 CQ 3 F- 3 3 - DJ Hl Ti o φ 3= tr DJ P t Φ rt 3 Ω Hi 3
≤ CQ rt 3 F" φ CQ 3 3 CQ et et PJ 3= rt ~. CL rt Pt 3 3 F" 3 Ω φ 3 rt F- Φ PJ P 03 tr Φ 3 φ 3 3 F- Ω rt φ tr F- P) 3 P PJ Φ F" et Hi 3 F- CL p Pt < CQ CQ rt F- 3 3 0 Ω DJ 03
3 Φ P N α 3 tr F- - — Φ tr J 3 tr CQ rt tr rt PJ 3 € CQ N Φ φ Pt 0 3 3 3 CL tr (- rt
3 3 Φ F- F- CQ 01 P Φ P Ti Φ CQ 01 3 Φ Oi P DJ Φ F- P CQ O P tsi CQ PJ • φ J rt CQ ≤ rt φ Φ φ rt < Hi 3 Φ F" P1 Φ 0 CQ F- rt 3 3 Φ Oi F- T> 1 3 φ 3 Ol F- P F1 Φ φ O
Φ H CQ P 0 o Φ 1 I CQ Φ CL 1 1 Ti 3 1 3 rt 1 tr Φ Φ P 1 rt 1 3 1 Φ
3 CQ I 1 F-
Zwischenregister vorgesehen sind. Vergleichbar ist die Busstruktur dabei mit einer Straße, die Schnellspuren und Kriechspuren aufweist und an vorgegebenen Zwischenstellen einen Spurwechsel ermöglicht.
Bevorzugt ist es allgemein, wenn das Bussystem eine Vielzahl von parallelen Segmentlinien umfaßt, wobei mehrere parallele Segmentlinien mit längeren Segmenten vorgesehen sind. Die längeren Segmente der Segmentlinien mit längeren Segmenten brauchen nicht alle gleichlang sein; es kann eine Staffelung vorgesehen sein.
Bevorzugt ist es allgemein weiter, wenn bei einer größeren Anzahl von parallelen Segmentlinien die Segmentlinienenden und/oder Leitungszwischenelemente in den Segmentlinien in Busrichtung versetzt gegeneinander angeordnet sind. Typisch sind an den Segmentlinienenden bzw. -anfangen Leitungszwischenelemente wie Schalter, Register, Multiplexer und Treiber vorgesehen. Die hardwaretechnische Implementierung die- ser Elemente erfordert nun erheblichen Raum, der gegenüber dem von den in Zwischenschichten anzuordnenden Leitungen beachtlich sein kann. Die bevorzugte versetzte Anordnung dieser Elemente sorgt nun dafür, daß nur Raum für Leitungszwi- schenelementanordnungen von z.B. zwei oder drei Segmentlini- en erfoderlich ist, nicht jedoch für Leitungszwischenelemen- tanordnungen aller vorhandenen Segmentlinien. Auch ist es mögöich, nicht bei allen Leitungszwischenelementanordnungen Treiber oder Register vorzusehen, sondern diese nur jedes n.-tes Segmentende vorzusehen. Bevorzugt ist jedoch dann, daß wenigstens drei Segmentlinien mit längeren Segmenten für wenigstens zwei Segmentlinien bei vorgegebenen Stellen Seg- mentlinienwechselkreise angeordnet werden, insbesondere Multiplexer, als Leitungszwischenelemente vorgesehen sind. So kann der gewünschte Segmentwechsel wie erforderlich gestal- tet werden. Bevorzugt ist die Busstruktur einem Zopf aus einer Vielzahl sich immer wieder kreuzender Strähnen vergleichbar, wobei an den Strähnenkreuzungen ein Segmentwechsel erfolgen kann und Wechsel unter längs des Busses vari- iernden Segmentpaaren oder Segmentgruppen möglich sind. Es ist dann möglich und bevorzugt, daß die Segmentlinienwech- selkreise für den Wechsel von einer ersten auf eine zweite Segmentlinie an einer ersten Stelle und die Segmentlinien- wechselkreise für den Wechsel von einer zweiten auf eine dritte Segmentlinie an einer zweiten Stelle vorgesehen sind. Neben dem nur paarweisen Wechsel wird bevorzugt auch die Möglichkeit geschaffen, an einer Stelle oder einer Vielzahl von Stellen unter mehreren Segmentlinien zu wählen, auf die gewechselt wird und/oder auf welche simultan Daten aufgege- ben werden.
In einem weiteren Aspekt der vorliegenden Erfindung wird der Logikzellenanordnung die Kommunikation der Zellen in zwei Richtungen möglich. Bei Busanordnungen mit Leitungszwi- schenelementen wie Treibern und/oder Registern sind Laufrichtungen definiert; um die Kommunikation der Zellen in zwei Richtungen zu ermöglichen, sind daher bevorzugt getrennte Busanordnungen für entgegengesetzte Laufrichtungen vorgesehen. Wenigstens in einer Richtung können wiederum für wenigstens unterschiedliche, insbesondere wiederum allgemein parallel geführte Segmentlinien mit kürzeren und längeren Segmenten vorgesehen sind.
Bei getrennten Segmentlinien für beide Laufrichtungen ist bevorzugt für wenigstens eine Laufrichtung Register vorgesehen, bevorzugt ist dabei, wie vorstehend erläutert, das Register im rückwärtsgeführten Bussystem vorgesehen, d.h. jenem Bussystem, mit denen Signale von einem Elementausgang zu einem Elementeingang zurückgeführt werden können.
Es sei erwähnt, daß gemäß einem weiteren Aspekt der vorliegenden ein erstes Bussystem für die Übertragung zu bearbeitender Daten und ein zweites Bussystem für die Übertragung von Status- und/oder Kontroll-bzw. Steuerinformation vorge- sehen sein kann; wiederum kann ein oder beide Bussysteme mit kurzen und langen Segmenten aufweisenden Segmentlinien gebildet sein und es können bevorzugt die jeweiligen Bussysteme bzw. Busanordnungen separat voneinander konfigurierbar, d.h. in ihrer Verschaltung festlegbar und/oder hinsichtlich der Operationen in verknüpfenden Registern bzw. der Ausgabe von Nachschautabellen bestimmbar sein.
Im Regelfall wird das Bussystem bevorzugt Einsatz finden bei einer Logikzellenanordnung, bei welcher eine Mehrzahl von Logikzellen in Reihe nebeneinander angeordnet sind; es sind dann die die längeren Segmente an wenigstens einer Logikzelle vorbeigeführt; umfaßt die Logikzellenanordnung noch mehr Logikzellen in einer Reihe, sind bevorzugt die längsten Segmente an mehr als einer Logikzelle vorbeigeführt . Es sei darauf hingewiesen, daß bei wenigstens zweidimensio- nalen Logikfeldern, also wenigstens reihen- und spaltenweiser Anordnung von Logikzellen, in jeder Reihe und in jeder Spalte ein segmentiertes Bussystem vorgesehen sein kann, das die vorbeschriebene Struktur mit langen und kurzen Segmenten in parallelen Segmentlinien aufweist.
Die beschriebene Busstruktur ist vorteilhaft bei allen Anordnungen, bei welchen datenverarbeitende also Logik- Einheiten miteinander verküpft werden sollen. Besondere Vorteile bieten sich aber, wenn die Logikzellen ausgewählt sind aus, umfassen und/oder bilden Rechenwerke, DPGAs, Kress- Arrays, systolische Prozessoren und RAW-Machines; digitale Signalprozessoren (DSPs) , die mehr als ein Rechenwerk besit- zen, konfigurierbare (programmierbare) Logikzellen oder andere Cores und/oder PAEs, ALU, Eingabe- / Ausgäbefunktionen (I/O) und/oder Speichermanagementeinheiten (I/O), Speicher. Eine erfolgreiche Implementierung einer Busstruktur mit Segmentlinien mit kurzen und langen Segmenten ist die VPU / XPP-Prozessoreinheit des Anmelders.
Ein solcher Prozessor wird bevorzugt eine Vielzahl unterschiedlicher, in einem Array angeordneter kommunizierender Logikeinheiten aufweisen, wobei die Logikeinheiten wenig- stens Speicher- und Datenveränderungseinheiten aufweisen und die Speichereinheiten randnah am Array angeordnet sind. Dies erlaubt es, Daten durch das Array laufen zu lassen und am Rand erforderlichenfalls zwischenzuspeichern, um eine Umkon- figration wie erforderlich zu bewirken. Das Durchlaufen kann auch durch parallele Reihen oder Spalten erfolgen und/oder auf mäande nde Welse, um so exhöhte Rechenleistung bereitzustellen.
Auch können allenfalls Eingang/Ausgangseinheiten näher am Rand als die Speichereinheiten angeordnet sein; dies erlaubt die Zwischenspeicherung von Daten vor Verarbeitung unter Arraydurchlauf . In jedem Fall wird aber bevorzugt, wenn zur Kommunikation der Logikeinheiten wenigstens von Rand zu Rand wenigstens ein Bussystem vorgesehen ist, das insbesondere segmentierbar ist wie vorbeschrieben. Dann ist es möglich, wenn zum Betrieb eines Prozessors Daten aus einem ersten randnahen Speicher ausgelesen und in einer erste, diesem Rand nahe Datenveränderungseinheit wie erforderlich verändert werden, von dort in wenigstens eine weitere Datenverän- derungseinheit übertragen werden, um weitere Datenveränderungen wie erforderlich vorzunehmen, die Daten nach Durch- laufen mehrerer Datenveränderungseinheiten in einen zweiten randnahen Speichern an einer vom ersten Speicher entfernten Stelle eingespeichert werden, eine Umkofigurierung der Datenveränderungseinheiten zur Neubestimmung der Datenverände- rung vorgenommen wird und die Daten ggf. in entgegengesetzer Laufrichtung durch zumindest einen Teil der Datenveränderungseinheiten geführt werden. Auch kann dann zum Betrieb vorgesehen sein, daß der Hinlauf in einer Reihe erfolgt und der Rücklauf in der bzw. einer darunter liegenden Reihe, um so Pipelineeffekte zu berücksichtigen.
Der Prozessor kann wenigstens ein programierbares Gatterfeld (PGA)' und mehrere Datenveränderungseinheiten mit ALUs aufweisen, wobei anwendungsspezifisch bevorzugt sein kann, wenn wenigstens eine oder mehrere PGAs von anderen Datenveränderungseinheiten, insbesondere ALUs umgeben sind, um von diesen leicht Daten zu Verknüpfungszwecke erhalten und/oder an diese ausgeben zu können.
Es ist möglich, daß bei einem Array aus rekonfigurierbaren Einheiten mehrere miteinander in Kommunikation bringbare insbesondere identische (Teil-) Arrays vorgesehen sind. Hierzu kann jeweils eine Umkonfigurierungseinheit vorgesehen sein, die zur Umkon iguration der umkonfigurierbaren Elemen- te des Arrays ausgebildet sein kann. Innerhalb des Arrays verlaufen dann die entsprechend vorstehend beschriebenen BusStrukturen. Es ist damit jedem Array eine Umkonfigurie- rungsverwaltungseinheit zugeordnet ist, die insbesondere an einer Arrayseite angeordnet sein kann, an welcher keine Speicher- und/oder I/O-Einheiten vorgesehen sind, wobei sich die Umkonf±gurierungse±nhe.i-t bevorzugt über die Breite des Arrays erstreckt, was den Vorteil bietet, daß eine optimale Chipform erzeugt werden kann.
Es ist dann wahlweise eine den Arrays gemeinsame Umkonfigu- rierungsverwaltungsübereinheit vorgesehen, die sich insbesondere über die Breite von mehr als einem Array erstreckt und die für die Kommunikation mit zumindest mehreren, bevorzugt allen der Umkonfigurierungsüberienheiten ausgelegt ist.
Alternativ und/oder zusätzlich ist es möglich, bei einem solchen Prozessor mit miteinander in Kommunikation bringbaren, insbesondere identischen Arrays, die umkonfigurierbare Datenveränderungseinheiten aufweisen, zwischen den Arrays Vermittlungseinheiten (VPAEs) vorzusehen sind, die zur Kommunikationsvermittlung unter den Feldern angeordnet sind. 4^ .J to t >_. o Π
3= 3 H td CL tr rt 3= td F- φ Φ tr 03 φ rt 03 CL * rt M F1 C N Hl P Hi tsi CL td CQ C 3 Hi W t 03 td 3 3 = tr F- 3 Φ Φ PJ P tr 03 CQ F- F- PJ DJ F- p rt 3 Φ Φ 0 3 PJ 3 3= PJ F- 3 φ 03 3 Φ P F- PJ 0 φ rt CQ 03 3 tr
Φ t T. < P P PJ φ rt 3 3 3 3 3 DJ P- P F- 3 3 3 03 CQ P rt CQ φ P P CL P Pt H 3 3 φ CL Φ
P DJ H 0 3 P F- • Φ Φ CL -t Φ CQ 3 Ω rt Hl CQ Φ F- 3 F- 03 F- F- DJ PJ H Hi 3 F- P rt φ P α 03 03 03 3 3 tsi 03 Φ 3 tr 3 CL F- 03 φ H tr 0 P <! Φ Φ tsi ^ rt 03 F- 03 03 ^~- 0
H F- 3 N J F- Hi φ rt 3 3 tr 3 Φ CQ Φ P PJ φ 3 PJ « Φ F- P F- CQ F- F- CQ td rt CL 03
PJ: O φ 3 rt 3 φ F- ϊ*. φ tr * CQ DJ s*i CQ P 3 F- 03 CQ F- 03 rt o P rt Φ O Ω 3 03 N 3= Φ 0
3 3 3 CQ φ CL P 3 φ 0 Hi PJ φ P <J P 0 P 3 rt Φ CL P F- 3 3 Φ Φ P 3 t P =3 3 tr P M
CQ 01 rt et 3 φ φ F- 3 Hi tr 0= 0 3 CQ PJ J tr Φ 3 φ φ 0 Hl F- P rt CL Φ DJ Pt Φ 0= Φ Ω
CQ Φ F- <j F- 3 Hl P- < LA) 3 F- Hl F- 3 rt φ CQ 3 F- rt CL Φ F- CL p rt PJ F- CQ P to tr
P Φ F- Φ 3 3 3 H F- N 3 ß φ 03 F- CQ CL F- F- Z F- 03 CQ rt PJ: Φ Φ tr F- 3 H rt rt Φ
CL 3 P 03 P 3 tr φ φ CQ F- CL 1 P ö rt LQ 3 Φ 0 rt P 3 P 03 P 3 tr tr ti p Φ 0 3 CL F- p Φ
Φ 0= 3 et J φ tr 3 3 Φ Φ 1 φ DJ • 3 DJ P 3 Φ P P P rt Φ P 3 3 • Φ P- 3 Φ Ω DJ 3 <
CQ CQ 3 P CQ F- P Ω P 3 3 3 rt p F1 Φ 03 3 DJ CL PJ Φ CQ PJ 3 rt CQ CL « rt 03 CL p tr CQ Φ Φ
H CQ Φ tr 0 rt Φ tr PJ rt _i Φ H F- F- 3 H > Φ *< P F- rt LQ Hl rt F- 0 φ PJ Φ P P
F- 03 Φ . Φ P et rt φ « CQ 3 3 Φ 03 φ CL - 03 03 F- 03 Φ P 3 φ F- CL 3 CQ 3
P Ω CL F- J 3 Φ φ P- 3 O R P 03 P F- « CQ 3 C <! rt 0 Φ CL 03 φ φ Hi P 3 3 P CL F- F-
P tr Φ rt 3 3 O 3 P CL CQ 3 Φ 0 F- P DJ 3 CL 0 φ 3 F- J rt F- t F- tr tr P P DJ 3 CQ rt
DJ Φ P F- 3 Ω ,— - α CL 3 > Hl t. PJ 3 φ 3 P 3 03 Ω 03 Φ φ 3 P 03 3 cΛ CQ rt et LQ O: φ Ω PJ w Φ 3 rt
<! 3 3 3 tr < PJ Φ CQ P F- 3 • : P 03 CQ Φ Pi rt tr p P P tr Φ 3 3 tr F- tr »<: P DJ H
CQ CL tr CQ TJ rt P Φ P cq CQ CQ Ω DJ 3 F- Φ td CL tsi < φ Φ Φ 3 P- P ,et rt 03 CL CL 3
. Φ φ CL tr > φ € F- DJ 3 3J 3 CL • LQ P Φ F- φ t J $ o CQ F- F- φ cq 3 J DJ F- Φ Φ 3
< 3 CQ φ tsi F- td 3 Φ 3 *< H CL F- rt Φ 3 03 3 3 3 3 Φ 3 F- rt 3 CQ Φ rt $ <! 3 CL Φ 3 CQ
Φ Ω P 3 Φ - — <! F- 3" tr DJ D 3 CL 03 α P rt 03 CQ F- 03 Φ φ rt 3 < F- Φ Φ Pi F- -- 03
P α tr P φ 01 φ Φ rt CQ F- 3 J DJ N 03 rt CL P rt Φ rt 3 Φ Φ o P P P « ϊ ! Φ
PJ P CQ Φ 3 P φ F- rt F- Pl Φ F- N 3 rt 3 Ti Φ Φ F- Φ P φ 3 3 P 3 CL tsi φ φ 0 O F- J rt P- Φ P Pt P- PJ: rt P 0 < Φ P =3 PJ F- r-> P F1 3 Hi 3 03 P ^~. 0: α 3 tr 03 Φ F- F- t 3 3 3
3 Φ Φ 0 N Φ rt 3 tr F- 3 0 F- < CL Φ Ω 0 PJ Φ 3 Hi rt < CQ PJ CL F- Φ 3 Ω 3 et Hi rt tr
Hl 3 tr 3 Φ F- Φ CL Φ tr Φ 03 F< d F- tr 3 03 Ω φ J
' > Φ J *ϋ H rt 3 F- tr Φ F- P Φ
Φ <! Φ Φ 3 3 F- Φ <! Φ tr DJ DJ > 03 et 03 03 tr 3 Ω PJ P 3 3 > F- Φ 0 CL 3 rt P- CQ 0 F-
3 Φ 3 et CQ φ 3 P 0 CL 3 P td 0 Φ 03 Φ Φ Φ tr 3 P Hi td Ω 3 CL 3 tr öd Φ 3= 3 3 F1 rt
C P φ p Φ J 3 P F- tr Hl DJ CQ 3 F- F- 3 3 < Hl DJ > S 03 3" F1 φ 3 Φ Φ rt tr P F1 Φ
Φ DJ: 3 F- 3 ö 3 3 N 3 Φ =3 ^ Φ 3 3 CL 0 α • ! P Φ "— ' Φ Φ CQ F- < φ < PJ 03 3
3 CQ P> CL CQ 3 CQ F- DJ D r-o φ F- W CL tr 3 φ 3 PJ CL p F- F- rt 0 ^ HS Φ rt μ. td CL S Ω et Φ CQ CQ rt rt 3 P P 3 0 Φ 3 rt F- DJ DJ 03 CL 3 rt 3= 3 φ P Φ s P F- CQ ,._----,
3 φ tr Φ P et Φ P C Φ 3 3 CL F- CL w ö Φ Φ 3 ^ Φ DJ 3 3 tr F- 3 tsi P DJ tr 0 3 <
03 P 0 φ 3 3 PJ Φ « P 0= 03 Hl F- rt o PJ 3 03 3 P CL 3 φ rt 3 CL Ω F- 3 DJ V
Ol 3 P 3 P F- 3 CQ 03 0 H l-Q Ω F- Φ Φ CL 3 rt Ti 3 - F- CQ P Φ CL CQ φ tr 3 CQ H > φ 3 CL DJ 3 3 =3 td Φ 3 DJ F1 tr cq 3 J Pi Φ 3= φ P 3 3 tr Φ F- Φ rt 3 Φ CL Φ Φ td
CQ 3 K rt CL Φ 3 3 3 Hi 3 F- F1 3 α 03 F- 3 tr P Φ CL =3 φ 3 tr 3 P 3 3 F- Q
DJ 01 3 DJ Φ 3 CQ 3 F- tr Ω Φ P PJ 3= CQ Φ 3 Ω 0 tr <! Φ DJ s: 3 CL 3 3 — -
3 Φ CQ P 3 0 0 3 Ti CL CQ rt tr 3 DJ rt tr td 3 F- P F- tr CL tr Φ 0 tr F- 3 s; F- 3 Φ CQ tr pl
F- C tr 3 CL J CL 3 rt 03 rt φ φ P- P 3 rt rt tr DJ φ 03 P Φ 3 CL φ P CL Φ P t
CL 3 $ Φ 3 Φ CL CQ φ Pt p P- • Φ F- 3 P 3 F- P rt J 03 F- rt tsi 03 Φ 3 CL * — , 3 F- F- 0
DJ tr S DJ Q 3 P F- 03 P DJ PJ 3 3 0 03 Φ CL PJ H P Φ 3 rt öd P F- 0 03 P- rt CQ 3
03 φ Φ P Ω F- Φ 3 α DJ 3 PJ CL rt P F- CQ 3 tsi CL tr CQ F- 0 CQ CL CL 3 rt Φ CQ Φ
F- 3 Φ tr Pt tr 3 3 I 3= P- P 03 tr F- φ 3 Φ Φ 3 F- S PJ rt rt 3 0 03 03 DJ Φ TS Φ 3 Φ 3
> rt 3 1 P PJ H Φ F- D tr Φ et P tr φ H 3 3 CQ 03 Φ 03 •• Φ 3 rt rt rt N p Φ F- P 3
P Φ DJ: rt Φ Φ Ω C 3 P F- φ 0 CQ < 03 rt F- rt Φ Φ Φ 3 P 3 <! <!
P 3 CL 3 F- F- F- tr DJ n F- ι-3 CQ CQ F" CL φ Φ φ • rt φ CL > • 3 tr 3 Φ <! PJ 0 Φ ö
DJ F- Pt 0 F1 3 rt CL τ> cq P Φ F- tr φ 3 CL P ö F- Φ P PJ 3 φ 03 CL F- F- 3 3 t DJ
^ tr φ 3 3 rt 3 φ Φ 03 03 PJ Φ 3 PJ 3 ≥. CQ tΛ CQ <! 3 F- 3 03 CL et rt φ 3 > P CL P 3 3 rt P F- CL 03 F- t i tr 3 « rt tr O » N Φ Φ F- Φ « 0 Φ
<! F- Pt CQ tr P DJ: 3 Ω 3 S: φ - N φ rt 3 φ P 0 φ CL F- P 3 3 P Φ P 3
Φ CL 0 P P Ω P tr D F- 3 tr P F- P φ rt F- 3 F- F1 Pt 3= Φ ^ CQ 3 Φ
P CQ 3 tr F- DJ tr Ω 3 3 Φ 03 £ Φ P 1 Pt rt £, Hi « Φ CL 0 tr F- 0 3 — 03 F- 3
I φ 3 φ 3 : rt tr s t 03 CQ P J P α 03 DJ Φ Φ F- 0 CQ 3 3 Φ 3 03 rt cq
F- 3 F- CQ 03 F- 3 CQ 1 tr CQ rt PJ rt 3 3 3 CQ 3 Φ 3 Hl P 3 1 Φ 1 rt CQ Φ Φ Φ φ 3 3 3 CQ F- 3
CQ rt 1 1 3 1 1 1
bindbar sind, wobei die Busse insbesondere über den Array- rand hinauslaufend ausgebildet und dort insbesondere weiter zu I/O-Schnittstelleneinheiten führbar sein können.
Wie vorstehend erläutert, ist es besonders bevorzugt, wenn im Prozessor ein oder mehrere Datenweiterleitungsregelimple- mentierungsmittel, insbesondere eine Nachschautabelle vorgesehen ist/sind, das zur Ermöglichung der Datenweiterleitung und insbesondere Datenübersetzung im Ansprechen auf die ge- meinsame Erfüllung einer Vielzahl von Kriterien, insbesondere ereignisbezogener Kriterien ausgebildet ist. Bei den Weiterzuleitenden Daten kann es sich insbesondere um Daten bzw. Triggervektoren handeln, die mit der Umkonfigurierung und/oder Umkonfigurierbarkeit von Logikzellen zu tun haben. Die Funktion bzw. die Übersetzung des jeweiligen Datenwei- terleitungsregelimplementierungsmittel wird entsprechend konfiguriert .
Es ist möglich, den Prozessor auch und gerade mit segmen- tierten Busstrukturen so aufzubauen, daß Datenveränderungs- einheiten und Datenspeichermittel vorgesehen sind, wobei zumindest einigen der Datenveränderungseinheiten Datenspeichermittel lokal zugeordnet sind, und insbesondere Mittel vorgesehen sind, um in die lokalen Datenspeichermittel lokal eingeschriebene Daten zur lokalen neuerlichen Datenveränderung lokal auszulesen. Mit anderen Worten können in einer Logikzelle Zwischenergebnisse gespeichert werden und mit anderen Daten und/oder unter Verwendung anderer Verknüpfungen weiterverarbeitet werden.
Wenn eine Umkonfigurierung eines Zellarrays aus im Betrieb rekonfigurierbaren Logikzellen erfolgt, das insbesondere eine Umkonfigurierung im Ansprechen auf die Propagation bestimmter vorgegebener Daten erlaubt, wie dies in der die Wa- ve-Rekonfiguration beschreibenden und unter Bezug genommen Veröffentlichungen insbesondere Schutzrechtsanmeldungen des vorliegenden Anmelders tun, so ist besonders bevorzugt, wenn auswählbar ist, ob die Rekonfiguration im Ansprechen auf die Datenpropagation für alle Logikzellen erfolgt, die von den vorgegebenen und/oder daraus hergeleiteten Daten angeströmt werden und/oder nur für einen Teil, insbesondere einen Verarbeitungszweig (zB einen if-then-Zweig) , während wenigstens ein anderer Zweig unverändert bleibt, was den Umkonfigurati- onsaufwand verringert und/oder nur eine Teilkette einer län- geren Reihe von insbesondere nacheinander Daten verarbeitenden Logikzellen insbesondere bis zu einer vorgegebenen Lo- -t-. *» ι-υ to to o o o tr rt 03 tr < CQ tr CQ 3 tr rt CL CL Ti 3 CL 3 D) $ Hl φ P Öd td CL CL CL CL CQ Ω CL td d CL Hi 3 03 rt rt LQ φ φ Ω Φ DJ Φ Φ Φ 3^ 3 F- Φ 3 Φ φ P F- DJ Ti 3 3 Φ 3= F- Φ 3 03 F- 3 Φ Φ F- tr F- 03 > P- Φ 3 0 DJ 3 F- F-
F- 3 tr F- P H 3 tr Ω F- 3 3 P 0 Φ 03 Ti CQ F- P 3 Ω CQ Φ P 3 Φ Φ PJ Φ td Φ tr P F1 <J 3 0 t rt P rt F- PJ 0: t tr rt LQ X P P Φ H Hl tr 03 F- 03 Ω P P P 03 Ω Φ CQ 3 N
01 Φ Φ 3 PJ 3 P CL *-* rt 03 F- rt < 0 0 3 F- Φ DJ 3 * 03 Φ tr öd φ ft PJ Φ cq φ 53 tr Φ ι P F- 3 3 Pi Φ F- F- - tr Φ P Ti 3 Φ X tr tr CQ F- Ω 3 03 rt 3 3 » Pt P F- φ & 3 Φ φ to N 03 M
2! PJ tr CQ rt Φ 3 CQ Φ φ φ P tr Ti PJ ≤ P F- Φ Φ 3 tr 3 rt 31 03 & et rt Hl tSJ 3 Φ 3 0 H
Φ P Φ Φ 3 Φ Φ CL P P Φ P rt F- tr 3 3 F- Φ CQ Φ 0 CQ 0 03 3 J φ DJ 3= PJ to F- 03 t Φ
H tr 3 3 3 CQ 3 CL F- Hl Φ 0 P- 0 F- P DJ J Ω CQ tSJ Φ 3 tr φ CQ Φ P 0 P 3 tr tr Φ cq φ 0 CQ 0 rt φ DJ F- Φ Φ 0 F- M rt X O CL F1 rt . — , Pt Φ to 3 3 3 tr F- 3 Ω P F- 3 03 P H CQ Φ F1 3 Φ P 3
Φ F- CL Ω <! 03 > P H Ω CQ 03 F- 3 >• rt F- ,-- M Φ φ CL φ F- Pt tr H 03 CL rt Φ 3 Φ Hi 03 rt 3 rt Φ tr 0 rt P P N CQ CQ tr rt tr 3 φ 0 3 F- P- F- PJ CL Φ H ti < PJ rt tr Φ C rt t F- rt t
0 3 CQ p - tr tr Φ Φ rt Φ Φ DJ CQ tr 3 3 Ω CQ tr Ti DJ p £ CL Φ 0 < CL F- S! Φ p Φ >• öd et q DJ 0 0 tr CQ td Q Φ Φ F- 3 Φ ,—- H, rt Φ F- Φ F> tr 3 Φ Ti 03 Φ Φ H P 0 tr 03 Φ 03 P φ F- 3 rt CL 3
3 3 <i Φ Φ tr F- F- rt Φ *• 3 3 Φ F- Φ 03 3 3 ^ — Φ Φ P <! F- rt CQ P PJ Ω F- 0 P3 to Hl < P rt Φ Hl
Φ 0 P H P rt rt F- + 3 F- 0 F- F- 3 rt J 0 <! 0 rt Φ Φ P tr 03 3 P PJ rt φ Φ DJ Φ p F-
CQ P Φ DJ PJ 03 03 < 3 3= F1 CL Ω 3 CQ CL rt fß Φ 3 X Φ P φ 03 3 03 DJ φ Φ CL F- 3 Φ tr rt 3 CQ Q φ CQ F- CL 3 tr tr Φ 03 tr — tr 3 Φ p . — . > Φ F- P H P Φ φ CL CQ 03 - Φ cq Ti H 2. F- 3 3
P 03 Φ Ω Φ Ω Φ Φ P PJ Φ - tr *— . Φ P CL 3 3 P > 3 tr F- Φ P- CQ 3J Φ Φ P CQ Φ >• φ J 0 DJ P
0 Ω H tr 3 tr P p s: 3 P Φ CQ 3 rt Φ 0= + tr Ti 3 F- PJ φ 03 3 φ Φ 3 P- ö £ 03 Φ P- 3 <! 3 ü Ω F-
) 1 PJ 03 Φ Φ Φ Φ 03 F- <! Φ > 3 CQ H Φ Ti PJ Φ P1 CQ • Hi 3 3 PJ F- M 3 to φ F- tr Φ
Φ - F- CL 3= N 3 F- F- 3 3 Ω 3 0 tr P> F- P — - F- P 3 P rt φ 3 3= C rt Φ <! Φ rt 3 Z Φ P
P Φ Φ tr 3 Ω Ω CL F- tr p 0= 03 tr 3 F- ' — rt 0 CL Φ Φ 3 0= tr 03 Φ t Φ 0 O 0= α Φ CQ CL rt φ tr 3 Φ tr tr tr Φ rt P £ ISJ P rt Φ F- Ω 03 X Φ 3 3 CL CQ P F- P DJ 3 Φ P tr 3 Ti cq 3 03 φ rt Φ P 03 Φ 03 φ rf F- φ 3 rt s; F- rt tr PJ tr F- P • φ F1 rt 3 3 Ti F- rt tsi 3 - H t φ Φ P to - 3 03 Φ F- - Φ CL Φ H CQ - Φ rt rt φ 3 Φ 3 3 3 F- CL ≥! 3 PJ 3 Φ €. t F- 0 3 P H- i Ω F- 3 Φ tr Ω et F- 3= 03 h-> 3 CQ P DJ PJ σ F- Ω 03 • PJ t Φ F- 0 Q Ω 3 rt tr tr P
P F- ^ 3 Φ F- 3 > P Φ tr F- rt tr tr Φ C P Φ rt 3 P- Ω td ^ Φ Ω 3 Φ FJ 3 0 tr Hi H 0= tsi CL
3: 03 P P F- 3 Pt Ti 3 Φ CL 3 Φ Φ Φ P φ Φ F- F- CQ Φ tr P - F- ö 3" 3 rt tr1 tr to F- F- tr 5
3 rt tr φ 3 Ti N 3 F- P P P Φ 3 3 Ω 0 P 03 rt Hi 3 F- 03 CL 0 DJ rt F- F- CQ Ω rt Q φ F- 3 CL PJ P 3 £ Φ s CQ Φ 3 N tr 3 Φ H F- CL Φ Ω tr CQ Hi Φ CQ t 03 3 tr 3
Φ tr F- rt 3 F- Φ 3 0 < F- tr φ CQ Ω P- TJ φ Φ 3 CQ F- 3 F- 3 tr 0 φ F- rt 3 3 Φ rt p CL Φ 3
Φ et 3 3 3 X o P F- £ Φ tr Ω -— - PJ 3 -— - 3 N φ 3 & Φ 3 üd PJ CL F- Pt Φ P - • H F- φ F- CL
O F- 03 3 Φ φ Ω Φ F- P CL 3 Ti Ω DJ P tr 3 11 CL 3 Φ 03 Φ 3 CL 3 3 Φ tsi 3 P F- 0 φ td 3 3
CL tr CQ F- 3 tr H 3 Φ Ti tr P F- — J Φ tr 3 Ω D) 3 >τd 03 rt P si φ 3 Φ φ PJ F- P CQ Φ 0 φ 03 φ 3 CQ Φ rt PJ <J 3 F- p Φ tr rt 3 3 Φ CL tr P CQ P 0 03 PJ DJ C F- P CL 3 3 Ti p CL
P rt P t i Φ F- 3 . et φ F- 3 0 3 φ rt F- φ 03 03 Φ F- Φ 0 CL Φ tr F- <! 3 tr 03 3 03 P φ
Φ Φ 3 0 P- P rt X F- Φ 3 P rt > 0 rt P Φ P N tsi φ Φ 03 Φ Φ tr CQ PJ tr cq φ DJ P
03 rt F- 03 3 CL ö 0 =3 C F- tr rt 3 3 tr Φ P =3 F- tr 3 Φ P t rt Φ PJ: P ö Φ F- Pt Φ rt p- Ω 03 Ω J φ 3 3 φ Φ F- 3 F- Φ Φ Φ * tr F- 3 > rt to 03 0= H • to DJ <! 3 φ φ 03 3 et F-
Φ CQ tr F- tr H P P 3 F- φ PJ 3 rt 2 P F- Φ Φ 3 P * : 3 03 < 3 Φ Φ 3 0 CQ 3 0 3 Φ F- rt 3
F- Φ Φ Ω 3 φ Ω --^ CL 3 rt φ F- tr rt <J F- rt tr tr 03 3 0 0 3 3 ö t Pi P Φ tr1 Φ 3 rt P 03 Φ 3
H 3 CQ tr Φ 3 tr 3 Φ φ = F- F- ≤ P PJ 03 o rt N Φ Φ rt rt P 3 Φ DJ o ESI o 3 CL φ 3 Ω P
Φ φ H P rt P tr 0 3 F- CL tr P 03 3 % F- <! Φ tsi PJ 3 CQ 03 3 Φ 3 CQ CQ rt Φ P DJ: tr Φ CL α= 3 P H •n tr CL H Φ Φ 3 p ~ tr Φ CQ tr Φ rt 0 3 Φ 3 3 Φ Hl F- CQ Φ F- 03 P tr φ 3 F- j = tr PJ= 3 Φ PJ: Φ PJ — ' 3 P CL CL P φ Φ CL P 03 P φ 3 0 3 CL 03 Pt P- 3 rt P Pt Ti Φ <J 3 3 Φ
3 Φ tr F- 03 Ti 03 N F- ^* CL L Φ P Φ CL tr tsi ** P CL DJ Ω DJ CQ F- tsi P Φ rt ö
CL P P s. P1 rt tr T5 Ω 3 Φ PJ Φ F- J Φ 03 Φ Φ 3 03 CL ^^ tr tr 3 3 tr Φ 3 Φ Φ N P •» ≥| DJ to
Φ CQ Φ ü φ Φ 03 α= tsi Ti P tr t 3 CQ Ω CL F- 03 3 P CQ Ω 3 3 0 Φ φ 3 P Φ H CQ Ω . £ 3 rt Φ
P PJ 3 DJ F- 3 3 tr 2 T. 0 P α= Φ 3 03 tr Φ Ω Φ •» Φ rt tr 3 3 CL F- tr DJ 03 tr d Φ CL rt Φ t
3 3 L rt φ φ • P X Φ Φ tr φ 3 tr 3 F- 3 3 Φ Φ F- rt rt PJ= 03 Φ φ . 3 DJ tsi 3 o
3 cq C φ 3 P P o F- F- 3 Φ Ω 3 3 PJ φ N Ω Φ tr CQ P N 3 3 F- F- tr Φ 3 C Φ <! 3 Q L DJ P 3 et CQ r 3 rt Φ P tr P- Ti S, 3 3 3 tr F- φ 3 - 03 0 3 3 F- s; CL CL 3 3 Φ Hl
Φ CL Φ 03 < p Ω F- F- DJ 3 3 CQ φ rt CL Ti Φ 3 φ 3 H F- 3 3 3 tr 3 3 rt 3 F- φ 3 Φ P H-
3 Φ P Φ 3 tr φ 3 et 3 Ω F- P P CL rt φ CL F- F- CL Φ rt >• φ t 3 CQ F- CL DJ cq
P c.= P CL F- P PJ F- CQ tr tsi φ o CL F- Φ F- Φ 3 öd rt rr p F- 03 P Φ PJ 3 Φ P 3
Φ α tr DJ P Ω Φ N rt O P P 3 φ X Φ Φ 3 3 Φ 3 3 φ φ Φ o Φ 03 CL φ 3 ta < Φ P tr P
F- DJ Φ P Φ tr F- 3 F- 3 Φ 3 ≥ F- 3 φ CL CL F- 3 DJ PJ P- 3 Φ 0 Φ DJ
3 P P F- rt O F- Φ Ti "• 3 Φ F1 F- W 3 3 F-
Φ 1 3 P 3 3 φ
konstante Datenberechnung möglich. Es sei als einleuchtend erwähnt, daß sich diese Art der Approximation auf mehrdimensionale Fälle durch Arbeitswertumklammerung in mehr als einer Richtung und entsprechendes Überschreiben der nach Über- schreiten eines n-dimensionalen Arbeitswertintervalls nicht mehr dem aktuellen Arbeitswertintervall benachbarter Intervalle übertragen läßt und schutzrechtlich als umfaßt angesehen wird.
Die Erfindung wird im Folgenden nur beispielsweise anhand der Zeichnung beschrieben. In dieser zeigt:
Fig.l den Gesamtaufbau eines erfindungsgemäß ausgestalteten Logikzellenarrays Fig.2 eine detailliertere Ansicht hierzu mit als Clu- stern bezeichneten Teilarrays, VPAEs dazwischen und Anschlußbussen Fig. 3 ein Beispiel für ein Vorwärtsregister eines Konfigurationsbusses Fig. 4 die Hierarchie von Konfigurationsmanagern eines erfindungsgemäß ausgestalteten Logikzellenarrays
Fig. 5 Details einer PAE mit Angaben, welche Details in verschiedenen Voranmeldungen partiell zu entnehmen sind. Erkennbar sind die drei Dateeingänge A B C in die Logikzelle, die fünf Triggereingänge für den Triggervektor Reset Stop Step GO RELoad, die beiden Daten-Ausgänge H(igh) und L(ow) sowie die Statussignalausgänge UVW und ie Busaufkopplung Fig .6 a den Aufbau der Logikzelle im Blockbild Fig. 6b den Aufbau eines Registers Fig. 6c den Registeraufbau eiens Rückwärtsregisters für Eventsignale mit der hier neuen optionalen Nachschautabelle Fig. 6d ein Vorwärtsregister mit Vorlademöglichkeit Fig 7 den Detailaufbau einer Speicherzelle, die eine von datenverändernden Logikzellen (PAEs) unterschiedlichen Eingang mit entsprechender anderer erforderlicher Busbreite aufweist Fig. 8 eine weitere Detailansicht eines Rückwärtsregi- sters im Konfigurationsbus mit Nachschautabelle für die Implementierung boolscher Verknüpfungen von Triggervektorbits Fig. 9 weitere Prozessordetails insbesondere der Busse Fig. 10 unsynchronisierte I/O Schaltung mit zwei Bussen Fig. 11 synchronisierte I/O Schaltung mit zwei Bussen Nach Fig.l umfaßt ein allgemein mit 1 bezeichneter Prozessor 1, der eine als XPP (xtreme processing platform) bezeichen- bare Einheit bilden kann, zwei Felder oder Cluster -einer Anzahl von arithmetischen Logikzellen (ALU-
PAEs=arithmetic logic unit processing array ele- ment) , -Speicherzellen (RAM-PAEs= Random acces memory processing array element) -mehreren, dargestellt vier Eingangs-/Ausgangszellen (E/A-Elemente, Input -Output -processing aray element) , -ein durch jedes Feld verlaufendes Bussystem, und -einen Konfigurationsmanager, der dem Feld zugeordnet ist, wobei diese Elemente zusammen als Cluster eine Einheit bilden, die für sich in der Lage ist, Daten zu verarbeiten und zwar als rekonfigurierbare Einheit und wobei den beiden Konfigurationsmanagern (CM) der Cluster ein übergeordneter Konfigurationsmanager
(SCM) zugeordnet ist, um so ein Übercluster bzw. die XPP zu bilden, wobei erwähnt sei, daß es insbesondere unter Ausnutzung baumartiger Hierarchiestrukturen möglich ist, mehr als zwei Felder von Prozessorelementen zusammenarbeiten zu lassen; so kann ein übergeordneter Konfigurationsmanager mehr als nur zwei Konfigurationsmanagern (CM) übergeordnet sein, welche ihrerseits jeweils nur einem einzelnen PAE-Cluster zugeordnet sind, und/oder es kann vorgesehen sein, daß eine mehrstufige Konfigurationsmanager-Hierarchie aufgebaut ist, worin, ersten, eigentlich dem Cluster zugeordneten Konfigurationsmanagern (CM) ein Konfigurationsmanager mittlerer Ebene zugeordnet ist und diese wiederum einer oder mehreren Hierarchieebenen unterstehen.
Fig. 1 gibt dabei die Anordnung der Zellen zueinander in einer zweidimensionalen Matrix und deren relative Größe näherungsweise zumindest insofern korrekt wieder, als daß die einzelnen Zellen sehr regelmäßig angeordnet sind und insbesondere die PAEs, also die speichernden und arithmetischen Logikzellen näherungsweise die gleiche Größe besitzen, was es erlaubt, bei der allgemein rechteckigen und/oder regulären Zellstruktur mit annähernd gleicher Anbindung an das Bussystem eine Kachelung vorzunehmen; die gezeigte Kachelung ist dabei aber insbesondere insofern willkürlich hinsicht- lieh der Anordnung von Speichern und Arithmetikeinheiten zueinander, als daß andere Anordnungen, auch unter Miteinbeziehung der I/O-Zellen und/oder unter Verwendung noch anderer Elemente problemfrei möglich sind, und ohne weiteres an eine gewünschte spezielle Rechenaufgabe anpaßbar sind. Die gezeigte Darstellung ist auch insofern beispielhaft, als statt einer zweidimensionalen Matrix auch eine dreidimensionale Anordnung von Einzelzellen im Raum möglich ist, sofern die Herstellungstechnik der verwendeten Halbleitertechnolo- gie dies erlaubt .
Eine einzelne PAE umfaßt nun eine Vielzahl von Ein- und Ausgängen. Dabei ist die einzelne PAE einerseits mit Datenein- und Ausgängen (A,B,C) versehen und andererseits mit Steuer- bzw. Kontrollein- und ausgängen (U,V,W) . Wie aus Fig. 1 ersichtlich, sind die PAEs in horizontalen Reihen angeordnet, wobei die Zellen untereinander über ein Bussystem miteinander verbunden sind; diese horizontalen Bussystem sind in der Feldmitte verbunden mit den darüber bzw. darunter liegenden PAEs und zwar im gezeigten bevorzugten Beispiel nach oben und unten nur mit diesen. Damit erfolgt der Transfer von Daten und Statussignalen (d.h. Steuersignalen) nach oben und unten durch die PAEs hindurch und zwar bevorzugt wie dargestellt in Fig. 1 unabhängig davon, um welche Art von PAEs es sich handelt, also unabhängig davon, ob es sich im vorliegenden Beispiel um eine RAM-PAE oder eine ALU-PAE handelt; es sind demnach alle Sorten von PAEs bevorzugt auf die gleiche Weise an das Bussystem angeschlossen und intern entsprechend verschaltet. Anders als dargestellt, wäre es prinzipi- eil sogar möglich, auch die E/A-Zellen zur Verbindung übereinander liegender Buslinien auszugestalten, was vorliegend allerdings unterblieben ist.
Die PAEs dienen somit der Weiterleitung von Daten, also zu verarbeitende sowie Steuer- bzw. Kontrollflußdaten in vertikaler Richtung. Die PAEs sind dabei so ausgebildet, daß diese Weiterleitung unter Datenveränderung oder unverändert erfolgt .
Die Datenveränderung kann zunächst in der eigentlichen Funktionseinheit der PAE erfolgen, z.B. wenn diese als arithmetische Logikeinheit ausgestattet ist und Daten in der Arithmetikeinheit verknüpft werden; um sicherzustellen, daß Daten hinreichend schnell bereitgestellt werden, um in der Zelle verknüpft zu werden und eine optimale Ausnutzung der Zell- taktung zu bewirken, sind drei Leitungen A,B,C mit der Bit- breite, die in der Zelle verarbeitet werden kann, an die Zelle geführt, vgl. Fig. 5. Dabei ist insbesondere auch eine bevorzugte additive EingangsVerknüpfung möglich, was es erlaubt, mit der Zelle Ergebnisse Operationen der Art (A+B) *C zeit- und platzeffizient zu bestimmen. Wenn keine Datenveränderung erforderlich ist, können die Daten an der Funktionseinheit vorbeigeleitet werden. So können z.B. Daten, die in einer Reihe weiter unten benötigt werden, dorthin durchgeleitet werden, ohne einer Veränderung in der PAE unterwor- fen zu werden. Es sei erwähnt, daß bei der simultanen Zuleitung von z.B. drei Datenwörtern entsprechend drei Eingänge A, B, C diese unterschiedlich weitergeleitet werden können. So ist es z.B. möglich, nur das Datenwort auf Leitung C unverändert weiterzuleiten, während A und B in der ALU mitein- ander verknüpft werden, z.B. durch Division A/B. Alternativ können auch zwei Datenworte an der ALU vorbeigeleitet werden, während ein Datenwort in der ALU z.B. mit einer Konstanten oder einem dort zwischengespeicherten anderen Wert verknüpft wird. Die Übertragbarkeit auf andere Datenwortmen- gen, die simultan der PAE zugeleitet werden, ist offensichtlich, d.h. es können auf Wunsch auch z.B. mehr als drei Datenworte an die PAE geführt sein; das einzelne Wort hat dabei die prozessorspezifische Bitbreite, vorliegend z.B. 32 Bit. Beliebige Eingänge und/oder Ausgänge von PAEs können mit
Konstanten von der Konfigurationseinheit (CT / CM) konfiguriert werden. Dabei können Konstante während des gesamten Betriebs einer Konfiguration unverändert konstant bleiben oder während des Betriebs d.h. der Ausführung einer Konfigu- ration von neuen Daten der Konfigurationseinheit (CT/CM) und/oder anderer Quellen wie z.B. PAEs überschrieben werden..
Auch ist einsichtig, daß anders als bei PAEs mit ALUs etwa in RAM-PAEs statt einer Verknüpfung aller oder eines Teils der Daten eine vollständige oder partielle Speicherung und/oder eine vollständige oder partielle Weiterleitung erfolgen kann.
Die Weiterleitung der Daten kann des weiteren unter Umgehung der eigentlich datenverändernden PAE-Kern-Einheit wie der ALU dergestalt erfolgen, daß dennoch eine Veränderung der Daten vor bzw. während der Weiterleitung erfolgt. Dies kann durch Veränderung der Daten unter Heranziehung von Nachschautabellen und anderen Verknüpfungseinheiten geschehen, z.B. Einheiten, die die eintreffenden Datenworte der Größe nach sortieren. Diese Einheiten sind bevorzugt zwischen die -t*. ^ ω ü-v to to
O l- ι o
Hi et
3 P
3 DJ
Pt H et Hl
F- 3
0 3
3 fT
PJ rt
F1 F-
F- O rt 3
DJ: PJ et H
- F- rt
03 PJ:
0 rt
3
CL tr φ φ
P - CL
3 φ
3
TI rt
3 Φ
3 rt t et CL
F- PJ
0 tr
3 Φ
PJ F-
H
F- 3 rt F-
DJ: Ω rt tr rt
F-
3 P
PJ: to 3
F- 3
3
3 F-
Φ Ω tr
<! Φ
0
3 tsi φ
£> 3 rr rt
03 P rr DJ
Φ H
1
1
Figure imgf000020_0001
len auf die zentrale Bedeutung und Wirkung der jeweiligen PAE. Die Zusatzfunktionen, die durch die Registerdatenwei- terleitungsfunktionalitätmodule implementiert sind, umfassen insbesondere bevorzugt im Vorwärtsregister für den Datenfluß Kontrolloperationen wie das Multiplexen oder Demultiplexen sowie das Kopieren und/oder andere Manipulieren von Daten; im Rückwärtsregister wird bevorzugt implementiert eine ALU- Funktionalität für den Datenfluß und/oder eine Boolsche Verknüpfung von Eventsignalen, d.h. Triggersignalen. Somit be- steht die PAE aus Modulen zur Manipulation von Datenströmen, zur operativen Verknüpfung und/oder Generierung von Datenpaketen sowie aus der Verarbeitung durch zumeist logische Verknüpfung und Generierung von Eventpaketen.
Die Ein-Ausgabemodule sind in ihrer Struktur gleichfalls in besonderer Weise an die Anforderungen der Datenverarbeitungsaufgabe angepaßt. Dazu ist jedes der Ein-Ausgabemodule mit mehreren Kanälen versehen, die unabhängig voneinander im sog. PORT-Modus (Fig. 10) arbeiten können oder in Synchroni- sation zueinander im sog. RAM-Modus (Fig. 11) arbeiten können. Jedes E/A-Modul kann dabei von mehreren Algorithmen unter Verwendung mehrerer Algorithmen gleichzeitig verwendet werden, wozu auch Sortieralgorithmen herangezogen werden können .
Mit anderen Worten arbeitet im Speicher- (RAM) -Modus (Fig. 11) das Ein/Ausgabemodul (I/O Schnittstelle) als Schnittstelle zu externem Speicher. Es werden dabei Schreibedaten und Adressdaten eines jeden Kanals synchronisiert, d.h. erst wenn bei- de Datenpakete vorhanden sind, wird ein externer Schreibvorgang gestartet. Im Lesemodus sortiert die EA Einheit von extern gesendete Pakete wieder an die internen Kanäle. Die Umschaltung zwischen Schreib- und Lesemodus kann z.B. per Konfiguration oder z.B. durch Signale erfolgen.

Claims

PCT-Anmeldung "Verfahren und Vorrichtung"Patentansprüche
1. Logikzellenanordnung mit einer Anzahl Logikzellen und einem seg entierten Bussystem für die Logikzellenkommunikation, dadurch gekennzeichnet, daß das Bussystem unterschiedliche Segmentlinien mit kürzeren und längeren Segmenten zur Verbindung zweier Punkte umfaßt, um die Anzahl zu durchlaufender Buselemente bei auseinander beabstandeten Kommunikationsstart- und Endpunkten gering halten zu können.
2. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß die Segmentlinien jeweils aus einer Mehrzahl paralleler Leitungen gebildet sind, deren Anzahl durch die Bus-Breite und/oder das Buspro- tokoll bestimmt ist.
3. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß datenverändernden Logikzellen drei der für die verarbeitete Bitbreite er- forderlichen Leitungsbündel als Datenzuführungsleitungen zugeführt sind.
. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß von datenverändernde Logikzellen zwei der für die verarbeitete Bitbreite erforderlichen Leitungsbündel für Daten weggeführt sind, insbesondere mit einem Leitungsbündel für höherwertige und einem Leitungsbündel für niederwerti- gere Bits.
Logikzellehanordnung insbesondere nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß bei rekonfigurierbaren Logikzellen an deren Steuereingänge Leitungsbündel geführt sind, die derart angeordnet sind, daß wenigstens Signale in die Zelle übertragbar sind, die alternativ wenigstens eine Art der Aktivie- rung (Step, Stop, Go) , ein Zurücksetzen (Reset) und ein Rekonfigurieren (Reload) bewirken können.
6. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß das Bussystem Segmente zur Verbindung der Logikzellen -untereinander und/oder mit
- internen und/oder externen, die Logikzellen -konfigurierenden und/oder rekonfigurierenden Einheiten, und/oder
-I/O-Schnittstellen und/oder zur Logikzellenanordnung externen Datenspeichern umfaßt .
7. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß das Busystem neben Leitungen weiter Leitungszwischenelemente umfaßt, insbesondere zumindest eines der Buselemente Verbindungs-Schalter,
Multiplexer, Register, insbesondere algebraisches verknüpfendes Register, insbesondere addierendes und/oder multiplizierendes Register, insbesondere nur zwei Operanden algebraisches verknüpfendes Register
Logikverknüpfungsschaltungen boolscher Art, insbesondere Nachschautabellen, und/oder
Leitungstreiber .
8. Logikzellenanordnung nach dem vorhergehenden Anspruch, worin Logikverknüpfungsschaltungen als Buselemente vor- gesehen sind, dadurch gekennzeichnet, daß die Logikverknüpfungsschaltungen von einer Logikzellenrekonfigurie- rungseinheit , insbesondere einer Konfigurationsmanagin- geinheit und/oder einer Logikzelle beschreibbar ist .
9. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß Übergangsmöglich- keiten von einem Segment einer ersten Segmentlinie auf ein Segment einer zweiten Segmentlinie vorgesehen sind.
10. Logikzellenanordnung nach einem der vorhergehenden An- sprüche, dadurch gekennzeichnet, daß das Bussystem eine Vielzahl von parallelen Segmentlinien umfaßt, wobei mehrere parallele Segmentlinien mit längeren Segmenten vorgesehen sind.
11. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß für unterschiedliche der Mehrzahl an parallelen Segmentlinien mit längeren Segmenten die Segmentlinienenden und/oder Leitungszwi- schenelemente in den Segmentlinien in Busrichtung versetzt gegeneinander angeordnet sind, insbesondere um jeweils mindestens eine Logikzelenein- heit versetzt.
12. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß bei wenigstens drei Segmentlinien mit längeren Segmenten für wenigstens zwei Segmentlinien bei vorgegebenen Stellen Segmentlinien- wechselkreise, insbesondere Multiplexer, als Leitungs- Zwischenelemente vorgesehen sind.
13. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß die Segmentlinienwechsel- kreise für den Wechsel von einer ersten auf eine zweite Segmentlinie an einer ersten Stelle und die Segmentli- nienwechselkreise für den Wechsel von einer zweiten auf eine dritte Segmentlinie an einer zweiten Stelle vorgesehen sind.
14. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß zumindest ein Segmentlini- enwechselmultiplexer vorgesehen ist, der den Übergang von einer Segmentlinie auf wenigstens eine wahlweise einer Vielzahl von Segmentlinien ermöglicht .
15. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß getrennte Busanordnungen für entgegengesetzte Laufrichtungen ausgebildet sind, wobei für wenigstens eine Laufrichtung unterschiedliche Segmentlinien mit kürzeren und längeren Segmenten vorgesehen sind.
16. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß bei getrennten Segmentlini- en für beide Laufrichtungen und für wenigstens eine Laufrichtung Register vorgesehen sind.
17. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß Register in rückwärtsgeführten Bussystemen vorgesehen sind, d.h. Bussystemen, mit denen Signale von einem Elementausgang zu einem Elementeingang zurückgeführt werden können.
18. Logikzellen nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß wahlweise zuschaltbare Re- gister zwischen zumindest zwei Segmenten wenigstens einer Segmentlinie vorgesehen sind.
19. Logikzellen nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß wenigstens ein wahlweise zuschalt- bares Register in einem vorwärtsgeführten Register vorgesehen ist.
20. Logikzellen nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, worin ein Mittel vorgesehen ist, um das Register bei Ausführung eines Programmes nach Wahl des Compilers zuzuschalten.
21. Logikzellenanordnung insbesondere nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein erstes Bussystem für die Übertragung zu bearbeitender Daten und ein zweites Bussystem für die Übertragung von Status- und/oder Kontroll-bzw. Steuerinformation vorgesehen ist .
22. Logikzellenanordnung nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß wenigstens bei einem der
Bussystem unterschiedliche Segmentlinien mit parallelen kürzeren und längeren Segmenten zur Verbindung zweier Punkte vorgesehen sind, um bei auseinander beabstandeten Logikzellen die Anzahl zu durchlaufender Buselemen- te gering halten zu können.
23. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß wenigßtens eine Reihe mit wengistens drei Logikzellen vorgesehen ist und die längeren .Segmente an wenigstens einer Logikzelle vorbeigeführt sind.
24. Logikzellenanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß wenigstens eine Reihe mit mehr als drei Logikzellen vorgesehen ist und die längsten Segmente an mehr als einer Logikzelle vorbeigeführt sind.
25. Logikzellenanordung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Logikzellen ausgewählt sind aus, umfassen und/oder bilden Rechenwerke, DPGAs, Kress-Arrays, systolische Prozessoren und RAW-Machines; digitale Signalprozessoren (DSPs), die mehr als ein Rechenwerk besitzen, konfigurierbare (programmierbare) Logikzellen oder andere Cores und/oder PAEs, ALU, Eingabe- / Ausgabefunktionen (I/O) und Speichermanagementeinheiten (I/O) , Speicher.
26. Prozessor mit einer Vielzahl unterschiedlicher, in einem Array angeordneter kommunizierender Logikeinheiten, dadurch gekennzeichnet, daß die Logikeinheiten wenigstens Speicher- und Datenveränderungseinheiten aufweisen und die Speichereinheiten randnah am Array angeordnet sind.
27. Prozessor nach dem vorhergehenden Anspruch, dadurch ge- ken1" eichnet, daß allenfalls Eingang/Ausgangseinheiten näher am Rand als die Speichereinheiten angeordnet sind.
28. Prozessor nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß zur Kommunikation der Logikeinheiten wenigstens von Rand zu Rand wenigstens ein Bussystem vorgesehen ist.
29. Prozessor nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß die Speichereinheiten am Rand des Bussystems angeordnet sind.
30. Prozessor nach einem der vorhergehenden Ansprüche, da- durch gekennzeichnet, daß mehrere miteinander in Kommunikation bringbare insbesondere identische Arrays vorgesehen sind.
31. Verfahren zum Betrieb eines Prozessors nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß
Daten aus einem ersten, insbesondere randnahen Speicher ausgelesen und in einer erste, diesem Speicher nahe Datenveränderungseinheit wie erforderlich verändert werden, insbesondere von dort in wenigstens eine weitere Datenveränderungseinheit übertragen werden, um weitere Datenveränderungen wie erforderlich vorzunehmen, die
Daten nach Durchlaufen einer oder mehrerer Datenveränderungseinheiten in einen zweiten Speicher an einer vom ersten Speicher insbesondere entfernten Stelle eingespeichert werden^, eine Umkofigurierung der Datenverän- derungseinheiten zur Neubestimmung der Datenveränderung vorgenommen wird, wonach insbesondere möglich ist, daß die so veränderten und/oder erzeugten Daten neuerlich insbesondere in entgegengesetzter Laufrichtung und insbesondere durch zumindest einen Teil der Datenveränderungseinheiten geführt werden.
32. Verfahren zum Betrieb eines Prozessors nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, wobei der Hinlauf in einer Reihe erfolgt und der Rücklauf in der bzw. einer darunter liegenden Reihe, um so Pipelineeffekte zu berücksichtigen.
33. Prozessor insbesondere nach einem der vorhergehenden
Ansprüche mit einem wenigstens zweidimensionalen Array unterschiedlicher Datenveränderungseinheiten, die wenigstens eine programmierbares Gatterfeld (PGA) und mehrere Datenveränderungseinheiten mit ALUs aufweisen, dadurch gekennzeichnet, daß das wenigstens eine oder mehrere PGAs von anderen Datenveränderungseinheiten, insbesondere ALUs umgeben sind.
34. Prozessor insbesondere nach einem der vorhergehenden Ansprüche, mit miteinander in Kommunikation bringbaren insbesondere identische Arrays, die umkonfigurierbare
Datenveränderungseinheiten und eine Umkonfigurierungs- einheit aufweisen, dadurch gekennzeichnet, daß jedem Array eine Umkonfigurierungsverwaltungseinheit zugeordnet ist, die insbesondere an einer Arrayseite angeordnet ist, an welcher keine Speicher- und/oder I/O-Einheiten vorgesehen sind, wobei sich d,ie Umkonfigurierungseinheit bevorzugt über die Breite des Arrays erstreckt.
35. Prozessor nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß eine den Arrays gemeinsame Umkonfigurierungsverwaltungsübereinheit vorgesehen ist, die sich insbesondere über die Breite von mehr als einem Array erstreckt und die für die Kommunikation mit zumindest mehreren, bevorzugt allen der Umkonfigurie- rungsüberienheiten ausgelegt ist.
36. Prozessor mit miteinander in Kommunikation bringbaren insbesondere identische Arrays, die umkonfigurierbare Datenveränderungseinheiten aufweisen, wobei zwischen den Arrays Vermittlungseinheiten (VPAEs) vorgesehen sind, die zur Kommunikationsvermittlung angeordnet sind.
37. Prozessor nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß die Konfigurationseinheiten von we- nigstesn zwei der Arrays direkt in Verbindung miteinan- der stehen, insbesondere über dedizierte Festleitungen und/oder über beim Booten vorkonfigurierte Datenleitungen.
38. Prozessor nach einem der beiden vorhergehenden Ansprü- ehe, dadurch gekennzeichnet, daß die Vermittlungseinheiten (VPAEs) zwei Konfigurationsregister aufweisen, wobei das erste Konfigurationsregister vom ersten Array und das zweite Konfigurationsregister vom zweiten Array ansprechbar ist, um so ein schleusenartiges Übertragen von Daten durch die VPAEs zu ermöglichen.
39. Prozessor insbesondere nach einem der beiden vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Arrays über eine Reihe Datenveränderungs- und/oder transfereinheiten (VPAE) miteinander in Komunikation bringbar sind.
40. Prozessor nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß die kommunikationsermöglichenden Da- tenveränderungseinheiten beidseits über längs des
Arrays verlaufende Busse an das Array verbindbar sind, wobei die Busse insbesondere über den Arrayrand hinauslaufend ausgebildet und dort insbesondere weiter zu I/O-Schnittstelleneinheiten führbar sein können.
41. Prozessor nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, daß an den Array-Außenrändern, die nicht an Nachbararrays angrenzen, längs des Arrays verlaufende Busse an das Array Vorgesehen sind, die insbesondere über den Arrayrand hinauslaufend ausgebildet und dort insbesondere weiter zu I/O-Schnittstelleneinheiten führbar sind.
42. Prozessor insbesondere nach einem der vorhergehenden Ansprüche mit einer umkonfigurierbaren Datenveränderungseinheit, die von Daten in einer durch I/O- Anschlüsse vorgegebenen Richtung durchströmt ist, wobei die Daten dadurch gekennzeichnet, daß ein Vorwärtsregister zur Datenweiterleitung im Ansprechen auf vorgege- bene Ereignisse vorgesehen ist.
43. Prozessor nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein Datenweiterleitungsrege- limplementierungsmittel, insbesondere eine Nachschauta- belle vorgesehen ist, das zur Ermöglichung der Datenweiterleitung im Ansprechen auf die gemeinsame Erfüllung einer Vielzahl von Kriterien, insbesondere ereignisbezogener Kriterien ausgebildet ist, bei Auslegung des Arrays mit reihenweise angeordneten Datenveränderungs- und/oder -
Verknüpfungseinheiten insbesondere auf die gemneinsame Erfüllung einer Vielzahl von in einer Reihe erfüllten Kriterien.
44. Prozessor insbesondere nach einem der vorhergehenden Ansprüche wobei Datenveränderungseinheiten und Datenspeichermittel vorgesehen sind, dadurch gekennzeichnet, daß zumindest einigen der Datenveränderungseinheiten Datenspeichermittel lokal zugeordnet sind, und insbesondere Mittel vorgesehen sind, um in die lokalen Datenspeichermittel lokal eingeschriebene Daten zur lokalen neuerlichen Datenveränderung lokal auszulesen.
45. Prozessor mit einer Mehrzahl umkonfigurierbarer Logikzellen, wobei wenigstens eine und bevorzugt eine Vielzahl von Logikzellen wenigstens einen Eingang zum Zurücksetzen der Lo- gikzelle (Reset) , wenigstens einen Eingang zum Umkonfigurieren der Logikzelle (Rekonfig) und wenigstens einen Eingang und bevorzugt mehrere Eingänge zum Aktivieren der Logikzelle (Step, Stop, Go)
und/oder worin die Vielzahl von Zellen
Statuseingänge aufweisen, welche dazu ausgelegt sind, angelegte Status -Eingangssignale zu unterscheiden in wenigstens einen Eingangsstatus zum Zurücksetzen der Logikzelle (Reset) , wenigstens einen Eingangstatus zum Umkonfigurieren der Logikzelle (Rekonfig) und wenigstens einen Eingang zum Aktivieren der Logkizelle (Step, Stop, Go) .
46. Verfahren zur Umkonfigurierung eines Zellarrays aus im Betrieb rekonfigurierbaren Logikzellen, wobei die Umkonfigurierung im Ansprechen auf die Propagation be- stimmter vorgegebener Daten erfolgt, dadurch gekennzeichnet, daß auswählbar ist, ob die Rekonfiguration für alle Logikzellen erfolgt, die von den vorgegebenen und/oder daraus hergeleiteten Daten angeströmt werden und/oder nur für einen Teil, insbesondere einen Verarbeitungszweig (zB einen if -then-Zweig) , während wenigstens ein anderer Zweig unverändert bleibt, und/oder nur eine Teilkette einer längeren Reihe von nacheinander Daten verarbeitenden Logikzellen isnbesodnere bis zu einer vorgegebenen Logikzelle, und/oder, um die Rekonfiguration sofort oder nach der bzw. einer weiteren Datenverarbeitung zu gestatten und eine solche Auswahl vorgenommen wird.
47. Verfahren zur vorladbare Logikeinheiten verwendenden Approximation des Verhaltens nichtlinearer Systeme, insbesondere unter Verwendung von Logikzellenanordungen nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß für eine Reihe aneinander angrenzender Arbeitsbereiche jeweilige geeignete Approximationen bestimmt werden, zu einem augenblicklichen Arbeitsbereich (n) sowie zu dessen unten und oben ( (n-1) , (n+1) ) angrenzenden Arbeitsbereichen die Approximationen ermöglichenden Parameter vorgeladen werden, das Verhalten mit dem mittleren (n) Arbeitsbereich approximiert wird, bis der Arbeitsbereich, innerhalb dessen die Approximation geeignet ist, überschritten wird, dann mit jener der Approximation (n-1) weiter gearbeitet wird, welche^ zu dem Arbeitsbereich gehört, in wel- chen hinein die Überschreitung erfolgte und bevorzugt die Approximation zu jenem Arbeitsbereich (n+1) , in welchen hinein die Überschreitung nicht erfolgte, überschrieben wird mit einer Approximation (n-2) , die gemeinsam mit der zuvor verwendeten Approximation (n) die derzeit verwendete Approximation (n-1) bzw. die zugehörigen Arbeitsbereiche umklammert.
PCT/EP2001/011593 1995-12-29 2001-10-08 Zellenarordnung mit segmentierterwischenzellstruktur WO2002029600A2 (de)

Priority Applications (55)

Application Number Priority Date Filing Date Title
US10/398,546 US7595659B2 (en) 2000-10-09 2001-10-08 Logic cell array and bus system
AT01986361T ATE437476T1 (de) 2000-10-06 2001-10-08 Zellenanordnung mit segmentierter zwischenzellstruktur
DE50115002T DE50115002D1 (de) 2000-10-06 2001-10-08 Zellenanordnung mit segmentierter zwischenzellstruktur
AU2002220600A AU2002220600A1 (en) 2000-10-06 2001-10-08 Cell system with segmented intermediate cell structure
EP01986361A EP1348257B8 (de) 2000-10-06 2001-10-08 Zellenanordnung mit segmentierter zwischenzellstruktur
JP2002533102A JP2004517386A (ja) 2000-10-06 2001-10-08 方法および装置
AU2060002A AU2060002A (en) 2000-10-06 2001-10-08 Method and device
PCT/EP2002/002403 WO2002071249A2 (de) 2001-03-05 2002-03-05 Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung
US10/469,910 US20070299993A1 (en) 2001-03-05 2002-03-05 Method and Device for Treating and Processing Data
US10/471,061 US7581076B2 (en) 2001-03-05 2002-03-05 Methods and devices for treating and/or processing data
EP02727358A EP1540507B1 (de) 2001-03-05 2002-03-05 Vorrichtung zur datenverarbeitung mit einem feld rekonfigurierbarer elemente
EP02712937A EP1454258A2 (de) 2001-03-05 2002-03-05 Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung
JP2002570104A JP2004536373A (ja) 2001-03-05 2002-03-05 データ処理方法およびデータ処理装置
AU2002254921A AU2002254921A1 (en) 2001-03-05 2002-03-05 Methods and devices for treating and processing data
EP02724198.3A EP1386220B1 (de) 2001-03-05 2002-03-05 Verfahren und vorrichtung zu datenbe- und/oder verarbeitung
PCT/EP2002/002402 WO2002071196A2 (de) 2001-03-05 2002-03-05 Verfahren und vorrichtung zu datenbe- und/oder verarbeitung
JP2002570052A JP4011488B2 (ja) 2001-03-05 2002-03-05 データ加工および/またはデータ処理方法および装置
JP2002570103A JP2004535613A (ja) 2001-03-05 2002-03-05 データ処理方法およびデータ処理装置
AU2002257615A AU2002257615A1 (en) 2001-03-05 2002-03-05 Methods and devices for treating and/or processing data
PCT/EP2002/002398 WO2002071248A2 (de) 2001-03-05 2002-03-05 Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung
EP02777144A EP1466264B1 (de) 1995-12-29 2002-09-18 Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
PCT/EP2002/010479 WO2003025781A2 (de) 2001-09-19 2002-09-18 Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
AU2002338729A AU2002338729A1 (en) 2001-09-19 2002-09-18 Router
AU2002357982A AU2002357982A1 (en) 2001-09-19 2002-09-19 Reconfigurable elements
JP2003538928A JP4456864B2 (ja) 2001-09-19 2002-09-19 リコンフィギュアブル素子
PCT/EP2002/010572 WO2003036507A2 (de) 2001-09-19 2002-09-19 Rekonfigurierbare elemente
EP02791644A EP1472616B8 (de) 2001-09-19 2002-09-19 Rekonfigurierbare elemente
US10/490,081 US8429385B2 (en) 2001-09-03 2002-09-19 Device including a field having function cells and information providing cells controlled by the function cells
AT02791644T ATE533111T1 (de) 2001-09-19 2002-09-19 Rekonfigurierbare elemente
JP2008249115A JP2009043275A (ja) 2001-03-05 2008-09-26 シーケンスの形成方法
JP2008249112A JP2009020909A (ja) 2001-03-05 2008-09-26 グラフのパーティショニング方法
JP2008249116A JP2009043276A (ja) 2001-03-05 2008-09-26 Fifo記憶方法
JP2008249106A JP2009054170A (ja) 2001-03-05 2008-09-26 データ流の管理方法
JP2008249099A JP2009032281A (ja) 2001-03-05 2008-09-26 データ伝送方法
US12/247,076 US8209653B2 (en) 2001-09-03 2008-10-07 Router
US12/371,040 US8058899B2 (en) 2000-10-06 2009-02-13 Logic cell array and bus system
US12/496,012 US20090300262A1 (en) 2001-03-05 2009-07-01 Methods and devices for treating and/or processing data
US12/570,984 US8312301B2 (en) 2001-03-05 2009-09-30 Methods and devices for treating and processing data
JP2009271120A JP2010079923A (ja) 2001-09-19 2009-11-30 処理チップ、チップを含むシステム、マルチプロセッサ装置およびマルチコアプロセッサ装置
US12/944,068 US9037807B2 (en) 2001-03-05 2010-11-11 Processor arrangement on a chip including data processing, memory, and interface elements
US13/023,796 US8686475B2 (en) 2001-09-19 2011-02-09 Reconfigurable elements
US13/043,102 US20110173389A1 (en) 2001-03-05 2011-03-08 Methods and devices for treating and/or processing data
US13/289,296 US8471593B2 (en) 2000-10-06 2011-11-04 Logic cell array and bus system
US13/653,639 US9075605B2 (en) 2001-03-05 2012-10-17 Methods and devices for treating and processing data
US13/903,470 US9047440B2 (en) 2000-10-06 2013-05-28 Logical cell array and bus system
US14/219,945 US9552047B2 (en) 2001-03-05 2014-03-19 Multiprocessor having runtime adjustable clock and clock dependent power supply
US14/231,358 US9436631B2 (en) 2001-03-05 2014-03-31 Chip including memory element storing higher level memory data on a page by page basis
US14/318,211 US9250908B2 (en) 2001-03-05 2014-06-27 Multi-processor bus and cache interconnection system
US14/500,618 US9141390B2 (en) 2001-03-05 2014-09-29 Method of processing data with an array of data processors according to application ID
US14/718,516 US9256575B2 (en) 2000-10-06 2015-05-21 Data processor chip with flexible bus system
US15/018,376 US9626325B2 (en) 2000-10-06 2016-02-08 Array processor having a segmented bus system
US15/225,638 US10152320B2 (en) 2001-03-05 2016-08-01 Method of transferring data between external devices and an array processor
US15/408,358 US10331194B2 (en) 2001-03-05 2017-01-17 Methods and devices for treating and processing data
US15/488,384 US20190065428A9 (en) 2000-10-06 2017-04-14 Array Processor Having a Segmented Bus System
US16/190,931 US20190102173A1 (en) 2001-03-05 2018-11-14 Methods and systems for transferring data between a processing device and external devices

Applications Claiming Priority (34)

Application Number Priority Date Filing Date Title
US23885500P 2000-10-06 2000-10-06
US60/238,855 2000-10-06
EPPCT/EP00/10516 2000-10-09
EPPCT/EP00/10516 2000-10-09
DE10110530.4 2001-03-05
DE10110530 2001-03-05
DE10111014.6 2001-03-07
DE10111014 2001-03-07
DE10135210.7 2001-07-24
DE10135211.5 2001-07-24
DE10135210 2001-07-24
DE10135211 2001-07-24
DE10139170 2001-08-16
DE10139170.6 2001-08-16
DE10142231.8 2001-08-29
DE10142231 2001-08-29
DE10142903 2001-09-03
DE10142894 2001-09-03
DE10142903.7 2001-09-03
DE10142904.5 2001-09-03
DE10142904 2001-09-03
DE10142894.4 2001-09-03
DE10144732 2001-09-11
DE10144733 2001-09-11
DE10144733.7 2001-09-11
DE10144732.9 2001-09-11
DE10145795.2 2001-09-17
DE10145792 2001-09-17
DE10145795 2001-09-17
DE10145792.8 2001-09-17
DE10146132.1 2001-09-19
DE10146132 2001-09-19
EP0111299 2001-09-30
EPPCT/EP01/11299 2001-09-30

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US10398546 A-371-Of-International 2001-10-08
US10/398,546 A-371-Of-International US7595659B2 (en) 2000-10-06 2001-10-08 Logic cell array and bus system
US12/371,040 Continuation US8058899B2 (en) 2000-10-06 2009-02-13 Logic cell array and bus system

Publications (2)

Publication Number Publication Date
WO2002029600A2 true WO2002029600A2 (de) 2002-04-11
WO2002029600A3 WO2002029600A3 (de) 2003-05-15

Family

ID=56290203

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2001/011593 WO2002029600A2 (de) 1995-12-29 2001-10-08 Zellenarordnung mit segmentierterwischenzellstruktur

Country Status (5)

Country Link
US (1) US7595659B2 (de)
JP (1) JP2004517386A (de)
AT (1) ATE437476T1 (de)
AU (2) AU2060002A (de)
WO (1) WO2002029600A2 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003025781A2 (de) 2001-09-19 2003-03-27 Pact Xpp Technologies Ag Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
US8869121B2 (en) 2001-08-16 2014-10-21 Pact Xpp Technologies Ag Method for the translation of programs for reconfigurable architectures
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US9075605B2 (en) 2001-03-05 2015-07-07 Pact Xpp Technologies Ag Methods and devices for treating and processing data

Families Citing this family (50)

* 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 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
ATE243390T1 (de) 1996-12-27 2003-07-15 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.)
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
AU5805300A (en) 1999-06-10 2001-01-02 Pact Informationstechnologie Gmbh Sequence partitioning in cell structures
EP1342158B1 (de) 2000-06-13 2010-08-04 Richter, Thomas Pipeline ct-protokolle und -kommunikation
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US7185226B2 (en) * 2001-02-24 2007-02-27 International Business Machines Corporation Fault tolerance in a supercomputer through dynamic repartitioning
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
EP1483682A2 (de) 2002-01-19 2004-12-08 PACT XPP Technologies AG Reconfigurierbarer prozessor
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
JP4388895B2 (ja) * 2002-09-06 2009-12-24 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト リコンフィギュアラブルなシーケンサ構造
EP1634182A2 (de) * 2003-06-17 2006-03-15 PACT XPP Technologies AG Datenverarbeitungseinrichtung und verfahren
EP1676208A2 (de) 2003-08-28 2006-07-05 PACT XPP Technologies AG Datenverarbeitungseinrichtung und verfahren
JP4416572B2 (ja) * 2004-05-27 2010-02-17 富士通株式会社 信号処理回路
US7296129B2 (en) * 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US20060036826A1 (en) * 2004-07-30 2006-02-16 International Business Machines Corporation System, method and storage medium for providing a bus speed multiplier
US7299313B2 (en) 2004-10-29 2007-11-20 International Business Machines Corporation System, method and storage medium for a memory subsystem command interface
US7331010B2 (en) * 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
US7512762B2 (en) 2004-10-29 2009-03-31 International Business Machines Corporation System, method and storage medium for a memory subsystem with positional read data latency
US7277988B2 (en) * 2004-10-29 2007-10-02 International Business Machines Corporation System, method and storage medium for providing data caching and data compression in a memory subsystem
US7395476B2 (en) * 2004-10-29 2008-07-01 International Business Machines Corporation System, method and storage medium for providing a high speed test interface to a memory subsystem
US7441060B2 (en) * 2004-10-29 2008-10-21 International Business Machines Corporation System, method and storage medium for providing a service interface to a memory system
DE102004056738B3 (de) * 2004-11-24 2006-05-18 Infineon Technologies Ag Programmierbare Logikzelle für eine programmierbare Logikanordnung, arithmetische Einheit und digitale Schaltungsanordnung
US7478259B2 (en) 2005-10-31 2009-01-13 International Business Machines Corporation System, method and storage medium for deriving clocks in a memory system
US7685392B2 (en) * 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US7636813B2 (en) * 2006-05-22 2009-12-22 International Business Machines Corporation Systems and methods for providing remote pre-fetch buffers
US7594055B2 (en) * 2006-05-24 2009-09-22 International Business Machines Corporation Systems and methods for providing distributed technology independent memory controllers
US7584336B2 (en) * 2006-06-08 2009-09-01 International Business Machines Corporation Systems and methods for providing data modification operations in memory subsystems
US7669086B2 (en) 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US7581073B2 (en) * 2006-08-09 2009-08-25 International Business Machines Corporation Systems and methods for providing distributed autonomous power management in a memory system
US7870459B2 (en) * 2006-10-23 2011-01-11 International Business Machines Corporation High density high reliability memory module with power gating and a fault tolerant address and command bus
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
US7603526B2 (en) * 2007-01-29 2009-10-13 International Business Machines Corporation Systems and methods for providing dynamic memory pre-fetch
US8843777B2 (en) * 2008-02-20 2014-09-23 Infineon Technologies Ag Modifying periodic signals produced by microcontroller
WO2010142432A2 (en) 2009-06-09 2010-12-16 Martin Vorbach System and method for a cache in a multi-core processor
JP5504985B2 (ja) * 2010-03-11 2014-05-28 富士ゼロックス株式会社 データ処理装置
EP3058456A4 (de) * 2013-10-18 2018-01-24 Marvell World Trade Ltd. Systeme und verfahren zur registerzuweisung
JP6354194B2 (ja) * 2014-02-18 2018-07-11 富士通株式会社 マルチプレクサ回路、マルチプレクサ回路の設計プログラムおよびマルチプレクサ回路の設計装置
JP2016178229A (ja) 2015-03-20 2016-10-06 株式会社東芝 再構成可能な回路
JP2018530040A (ja) * 2015-07-31 2018-10-11 呉 国盛WU, Guosheng 自己適応型チップ及び配置方法
US11803507B2 (en) 2018-10-29 2023-10-31 Secturion Systems, Inc. Data stream protocol field decoding by a systolic array
GB2580165B (en) * 2018-12-21 2021-02-24 Graphcore Ltd Data exchange in a computer with predetermined delay

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5144166A (en) * 1990-11-02 1992-09-01 Concurrent Logic, Inc. Programmable logic cell and array
US5600265A (en) * 1986-09-19 1997-02-04 Actel Corporation Programmable interconnect architecture
US5892370A (en) * 1996-06-21 1999-04-06 Quicklogic Corporation Clock network for field programmable gate array

Family Cites Families (182)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2067477A (en) 1931-03-20 1937-01-12 Allis Chalmers Mfg Co Gearing
GB971191A (en) 1962-05-28 1964-09-30 Wolf Electric Tools Ltd Improvements relating to electrically driven equipment
GB1253309A (en) 1969-11-21 1971-11-10 Marconi Co Ltd Improvements in or relating to data processing arrangements
DE2057312A1 (de) 1970-11-21 1972-05-25 Bhs Bayerische Berg Planetenradgetriebe mit Lastdruckausgleich
US3855577A (en) 1973-06-11 1974-12-17 Texas Instruments Inc Power saving circuit for calculator system
US4233667A (en) 1978-10-23 1980-11-11 International Business Machines Corporation Demand powered programmable logic array
US4442508A (en) 1981-08-05 1984-04-10 General Instrument Corporation Storage cells for use in two conductor data column storage logic arrays
US4498134A (en) 1982-01-26 1985-02-05 Hughes Aircraft Company Segregator functional plane for use in a modular array processor
US4590583A (en) 1982-07-16 1986-05-20 At&T Bell Laboratories Coin telephone measurement circuitry
US4498172A (en) 1982-07-26 1985-02-05 General Electric Company System for polynomial division self-testing of digital networks
US4667190A (en) 1982-07-30 1987-05-19 Honeywell Inc. Two axis fast access memory
JPS5936857A (ja) 1982-08-25 1984-02-29 Nec Corp プロセツサユニツト
US4663706A (en) 1982-10-28 1987-05-05 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4739474A (en) 1983-03-10 1988-04-19 Martin Marietta Corporation Geometric-arithmetic parallel processor
US4566102A (en) 1983-04-18 1986-01-21 International Business Machines Corporation Parallel-shift error reconfiguration
US5123109A (en) 1983-05-31 1992-06-16 Thinking Machines Corporation Parallel processor including a processor array with plural data transfer arrangements including (1) a global router and (2) a proximate-neighbor transfer system
US4870302A (en) 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
USRE34363E (en) 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4761755A (en) 1984-07-11 1988-08-02 Prime Computer, Inc. Data processing system and method having an improved arithmetic unit
US4682284A (en) 1984-12-06 1987-07-21 American Telephone & Telegraph Co., At&T Bell Lab. Queue administration method and apparatus
DE3681463D1 (de) 1985-01-29 1991-10-24 Secr Defence Brit Verarbeitungszelle fuer fehlertolerante matrixanordnungen.
US5023775A (en) 1985-02-14 1991-06-11 Intel Corporation Software programmable logic array utilizing "and" and "or" gates
US5247689A (en) 1985-02-25 1993-09-21 Ewert Alfred P Parallel digital processor including lateral transfer buses with interrupt switches to form bus interconnection segments
US4706216A (en) 1985-02-27 1987-11-10 Xilinx, Inc. Configurable logic element
US5015884A (en) 1985-03-29 1991-05-14 Advanced Micro Devices, Inc. Multiple array high performance programmable logic device family
US4972314A (en) 1985-05-20 1990-11-20 Hughes Aircraft Company Data flow signal processor method and apparatus
US4967340A (en) 1985-06-12 1990-10-30 E-Systems, Inc. Adaptive processing system having an array of individually configurable processing components
US4720780A (en) 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
US4852048A (en) 1985-12-12 1989-07-25 Itt Corporation Single instruction multiple data (SIMD) cellular array processing apparatus employing a common bus where a first number of bits manifest a first bus portion and a second number of bits manifest a second bus portion
US4882687A (en) 1986-03-31 1989-11-21 Schlumberger Technology Corporation Pixel processor
US5021947A (en) 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing
US5034914A (en) 1986-05-15 1991-07-23 Aquidneck Systems International, Inc. Optical disk data storage method and apparatus with buffered interface
GB8612396D0 (en) 1986-05-21 1986-06-25 Hewlett Packard Ltd Chain-configured interface bus system
US4860201A (en) 1986-09-02 1989-08-22 The Trustees Of Columbia University In The City Of New York Binary tree parallel processor
US4910665A (en) 1986-09-02 1990-03-20 General Electric Company Distributed processing system including reconfigurable elements
FR2606184B1 (fr) 1986-10-31 1991-11-29 Thomson Csf Dispositif de calcul reconfigurable
US4918440A (en) 1986-11-07 1990-04-17 Furtek Frederick C Programmable logic cell and array
US4811214A (en) 1986-11-14 1989-03-07 Princeton University Multinode reconfigurable pipeline computer
US5226122A (en) 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
US5115510A (en) 1987-10-20 1992-05-19 Sharp Kabushiki Kaisha Multistage data flow processor with instruction packet, fetch, storage transmission and address generation controlled by destination information
US5113498A (en) 1987-11-10 1992-05-12 Echelon Corporation Input/output section for an intelligent cell which provides sensing, bidirectional communications and control
USRE34444E (en) 1988-01-13 1993-11-16 Xilinx, Inc. Programmable logic device
US5303172A (en) 1988-02-16 1994-04-12 Array Microsystems Pipelined combination and vector signal processor
JPH06101043B2 (ja) 1988-06-30 1994-12-12 三菱電機株式会社 マイクロコンピュータ
WO1990001192A1 (en) * 1988-07-22 1990-02-08 United States Department Of Energy Data flow machine for data driven computing
US5010401A (en) 1988-08-11 1991-04-23 Mitsubishi Denki Kabushiki Kaisha Picture coding and decoding apparatus using vector quantization
US5204935A (en) 1988-08-19 1993-04-20 Fuji Xerox Co., Ltd. Programmable fuzzy logic circuits
US4901268A (en) 1988-08-19 1990-02-13 General Electric Company Multiple function data processor
US5353432A (en) 1988-09-09 1994-10-04 Compaq Computer Corporation Interactive method for configuration of computer system and circuit boards with user specification of system resources and computer resolution of resource conflicts
ATE98833T1 (de) 1988-09-22 1994-01-15 Siemens Ag Schaltungsanordnung fuer fernmeldevermittlungsanlagen, insbesondere pcmzeitmultiplex-fernsprechvermittlungsanlagen mit zentralkoppelfeld und angeschlossenen teilkoppelfeldern.
JP2930341B2 (ja) 1988-10-07 1999-08-03 マーチン・マリエッタ・コーポレーション データ並列処理装置
US5014193A (en) 1988-10-14 1991-05-07 Compaq Computer Corporation Dynamically configurable portable computer system
US5136717A (en) 1988-11-23 1992-08-04 Flavors Technology Inc. Realtime systolic, multiple-instruction, single-data parallel computer system
US5041924A (en) 1988-11-30 1991-08-20 Quantum Corporation Removable and transportable hard disk subsystem
US5081375A (en) 1989-01-19 1992-01-14 National Semiconductor Corp. Method for operating a multiple page programmable logic device
US5203005A (en) 1989-05-02 1993-04-13 Horst Robert W Cell structure for linear array wafer scale integration architecture with capability to open boundary i/o bus without neighbor acknowledgement
US5237686A (en) 1989-05-10 1993-08-17 Mitsubishi Denki Kabushiki Kaisha Multiprocessor type time varying image encoding system and image processor with memory bus control table for arbitration priority
US5109503A (en) 1989-05-22 1992-04-28 Ge Fanuc Automation North America, Inc. Apparatus with reconfigurable counter includes memory for storing plurality of counter configuration files which respectively define plurality of predetermined counters
JP2584673B2 (ja) 1989-06-09 1997-02-26 株式会社日立製作所 テストデータ変更回路を有する論理回路テスト装置
US5182474A (en) * 1991-03-26 1993-01-26 Sodick Co., Ltd. Pulse control circuit for electric discharge machine using programmable logic
CA2021192A1 (en) 1989-07-28 1991-01-29 Malcolm A. Mumme Simplified synchronous mesh processor
US5343406A (en) 1989-07-28 1994-08-30 Xilinx, Inc. Distributed memory architecture for a configurable logic array and method for using distributed memory
US5233539A (en) 1989-08-15 1993-08-03 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure, input/output structure and configurable logic block
US5212652A (en) 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5128559A (en) 1989-09-29 1992-07-07 Sgs-Thomson Microelectronics, Inc. Logic block for programmable logic devices
GB8925723D0 (en) 1989-11-14 1990-01-04 Amt Holdings Processor array system
EP0428770B1 (de) 1989-11-21 1995-02-01 Deutsche ITT Industries GmbH Datengesteuerter Arrayprozessor
US5099447A (en) 1990-01-22 1992-03-24 Alliant Computer Systems Corporation Blocked matrix multiplication for computers with hierarchical memory
US5125801A (en) 1990-02-02 1992-06-30 Isco, Inc. Pumping system
US5142469A (en) 1990-03-29 1992-08-25 Ge Fanuc Automation North America, Inc. Method for converting a programmable logic controller hardware configuration and corresponding control program for use on a first programmable logic controller to use on a second programmable logic controller
US5198705A (en) 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5193202A (en) 1990-05-29 1993-03-09 Wavetracer, Inc. Processor array with relocated operand physical address generator capable of data transfer to distant physical processor for each virtual processor while simulating dimensionally larger array processor
US5274593A (en) 1990-09-28 1993-12-28 Intergraph Corporation High speed redundant rows and columns for semiconductor memories
US5625836A (en) * 1990-11-13 1997-04-29 International Business Machines Corporation SIMD/MIMD processing memory element (PME)
US5276836A (en) 1991-01-10 1994-01-04 Hitachi, Ltd. Data processing device with common memory connecting mechanism
US5301284A (en) 1991-01-16 1994-04-05 Walker-Estes Corporation Mixed-resolution, N-dimensional object space method and apparatus
US5301344A (en) 1991-01-29 1994-04-05 Analogic Corporation Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
US5212716A (en) 1991-02-05 1993-05-18 International Business Machines Corporation Data edge phase sorting circuits
US5218302A (en) 1991-02-06 1993-06-08 Sun Electric Corporation Interface for coupling an analyzer to a distributorless ignition system
JPH06507990A (ja) 1991-05-24 1994-09-08 ブリティッシュ・テクノロジー・グループ・ユーエスエイ・インコーポレーテッド コンピュータのための最適化コンパイラ
JP3259969B2 (ja) * 1991-07-09 2002-02-25 株式会社東芝 キャッシュメモリ制御装置
US5347639A (en) 1991-07-15 1994-09-13 International Business Machines Corporation Self-parallelizing computer system and method
US5338984A (en) 1991-08-29 1994-08-16 National Semiconductor Corp. Local and express diagonal busses in a configurable logic array
FR2681791B1 (fr) 1991-09-27 1994-05-06 Salomon Sa Dispositif d'amortissement des vibrations pour club de golf.
US5208491A (en) 1992-01-07 1993-05-04 Washington Research Foundation Field programmable gate array
FR2686175B1 (fr) 1992-01-14 1996-12-20 Andre Thepaut Systeme de traitement de donnees multiprocesseur.
JP3032382B2 (ja) 1992-07-13 2000-04-17 シャープ株式会社 デジタル信号のサンプリング周波数変換装置
US5425036A (en) 1992-09-18 1995-06-13 Quickturn Design Systems, Inc. Method and apparatus for debugging reconfigurable emulation systems
US5392437A (en) 1992-11-06 1995-02-21 Intel Corporation Method and apparatus for independently stopping and restarting functional units
US5361373A (en) 1992-12-11 1994-11-01 Gilson Kent L Integrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor
US5311079A (en) 1992-12-17 1994-05-10 Ditlow Gary S Low power, high performance PLA
US5428526A (en) 1993-02-03 1995-06-27 Flood; Mark A. Programmable controller with time periodic communication
JPH06276086A (ja) 1993-03-18 1994-09-30 Fuji Xerox Co Ltd フィールドプログラマブルゲートアレイ
US5418953A (en) 1993-04-12 1995-05-23 Loral/Rohm Mil-Spec Corp. Method for automated deployment of a software program onto a multi-processor architecture
US5349193A (en) 1993-05-20 1994-09-20 Princeton Gamma Tech, Inc. Highly sensitive nuclear spectrometer apparatus and method
US5444394A (en) 1993-07-08 1995-08-22 Altera Corporation PLD with selective inputs from local and global conductors
US5457644A (en) 1993-08-20 1995-10-10 Actel Corporation Field programmable digital signal processing array integrated circuit
US5440538A (en) 1993-09-23 1995-08-08 Massachusetts Institute Of Technology Communication system with redundant links and data bit time multiplexing
US5455525A (en) 1993-12-06 1995-10-03 Intelligent Logic Systems, Inc. Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array
US5535406A (en) * 1993-12-29 1996-07-09 Kolchinsky; Alexander Virtual processor module including a reconfigurable programmable matrix
US5781756A (en) * 1994-04-01 1998-07-14 Xilinx, Inc. Programmable logic device with partially configurable memory cells and a method for configuration
US5430687A (en) 1994-04-01 1995-07-04 Xilinx, Inc. Programmable logic device including a parallel input device for loading memory cells
US5426378A (en) 1994-04-20 1995-06-20 Xilinx, Inc. Programmable logic device which stores more than one configuration and means for switching configurations
US5537580A (en) * 1994-12-21 1996-07-16 Vlsi Technology, Inc. Integrated circuit fabrication using state machine extraction from behavioral hardware description language
EP0727750B1 (de) * 1995-02-17 2004-05-12 Kabushiki Kaisha Toshiba Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe
US5752035A (en) * 1995-04-05 1998-05-12 Xilinx, Inc. Method for compiling and executing programs for reprogrammable instruction set accelerator
US5748979A (en) * 1995-04-05 1998-05-05 Xilinx Inc Reprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table
JP3313007B2 (ja) * 1995-04-14 2002-08-12 三菱電機株式会社 マイクロコンピュータ
US6077315A (en) * 1995-04-17 2000-06-20 Ricoh Company Ltd. Compiling system and method for partially reconfigurable computing
GB9508931D0 (en) * 1995-05-02 1995-06-21 Xilinx Inc Programmable switch for FPGA input/output signals
JP3677315B2 (ja) * 1995-06-01 2005-07-27 シャープ株式会社 データ駆動型情報処理装置
US5652529A (en) * 1995-06-02 1997-07-29 International Business Machines Corporation Programmable array clock/reset resource
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array
US5646545A (en) * 1995-08-18 1997-07-08 Xilinx, Inc. Time multiplexed programmable logic device
US5737565A (en) * 1995-08-24 1998-04-07 International Business Machines Corporation System and method for diallocating stream from a stream buffer
US5737516A (en) * 1995-08-30 1998-04-07 Motorola, Inc. Data processing system for performing a debug function and method therefor
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
JP2795244B2 (ja) * 1996-01-17 1998-09-10 日本電気株式会社 プログラムデバッグシステム
US5754459A (en) * 1996-02-08 1998-05-19 Xilinx, Inc. Multiplier circuit design for a programmable logic device
KR0165515B1 (ko) * 1996-02-17 1999-01-15 김광호 그래픽 데이터의 선입선출기 및 선입선출 방법
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
US6338106B1 (en) * 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
EP0858168A1 (de) * 1997-01-29 1998-08-12 Hewlett-Packard Company Feldprogrammierbarer Gatterprozessor
US6055619A (en) * 1997-02-07 2000-04-25 Cirrus Logic, Inc. Circuits, system, and methods for processing multiple data streams
DE19704742A1 (de) * 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
US5857097A (en) * 1997-03-10 1999-01-05 Digital Equipment Corporation Method for identifying reasons for dynamic stall cycles during the execution of a program
US6035371A (en) * 1997-05-28 2000-03-07 3Com Corporation Method and apparatus for addressing a static random access memory device based on signals for addressing a dynamic memory access device
US5966534A (en) * 1997-06-27 1999-10-12 Cooke; Laurence H. Method for compiling high level programming languages into an integrated processor with reconfigurable logic
US6020760A (en) * 1997-07-16 2000-02-01 Altera Corporation I/O buffer circuit with pin multiplexing
US6170051B1 (en) * 1997-08-01 2001-01-02 Micron Technology, Inc. Apparatus and method for program level parallelism in a VLIW processor
JP4197755B2 (ja) * 1997-11-19 2008-12-17 富士通株式会社 信号伝送システム、該信号伝送システムのレシーバ回路、および、該信号伝送システムが適用される半導体記憶装置
US6212650B1 (en) * 1997-11-24 2001-04-03 Xilinx, Inc. Interactive dubug tool for programmable circuits
WO1999031574A1 (en) * 1997-12-17 1999-06-24 Hewlett-Packard Company Implementation of multipliers in programmable arrays
DE69841256D1 (de) * 1997-12-17 2009-12-10 Panasonic Corp Befehlsmaskierung um Befehlsströme einem Prozessor zuzuleiten
DE69827589T2 (de) * 1997-12-17 2005-11-03 Elixent Ltd. Konfigurierbare Verarbeitungsanordnung und Verfahren zur Benutzung dieser Anordnung, um eine Zentraleinheit aufzubauen
US6105106A (en) * 1997-12-31 2000-08-15 Micron Technology, Inc. Computer system, memory device and shift register including a balanced switching circuit with series connected transfer gates which are selectively clocked for fast switching times
US6216223B1 (en) * 1998-01-12 2001-04-10 Billions Of Operations Per Second, Inc. Methods and apparatus to dynamically reconfigure the instruction pipeline of an indirect very long instruction word scalable processor
US6198304B1 (en) * 1998-02-23 2001-03-06 Xilinx, Inc. Programmable logic device
US6374286B1 (en) * 1998-04-06 2002-04-16 Rockwell Collins, Inc. Real time processor capable of concurrently running multiple independent JAVA machines
US6084429A (en) * 1998-04-24 2000-07-04 Xilinx, Inc. PLD having a window pane architecture with segmented and staggered interconnect wiring between logic block arrays
JP3123977B2 (ja) * 1998-06-04 2001-01-15 日本電気株式会社 プログラマブル機能ブロック
US6137307A (en) * 1998-08-04 2000-10-24 Xilinx, Inc. Structure and method for loading wide frames of data from a narrow input bus
US6205458B1 (en) * 1998-09-21 2001-03-20 Rn2R, L.L.C. Adder and multiplier circuits employing logic gates having discrete, weighted inputs and methods of performing combinatorial operations therewith
US6215326B1 (en) * 1998-11-18 2001-04-10 Altera Corporation Programmable logic device architecture with super-regions having logic regions and a memory region
US6044030A (en) * 1998-12-21 2000-03-28 Philips Electronics North America Corporation FIFO unit with single pointer
US6757847B1 (en) * 1998-12-29 2004-06-29 International Business Machines Corporation Synchronization for system analysis
US6381624B1 (en) * 1999-04-29 2002-04-30 Hewlett-Packard Company Faster multiply/accumulator
US7007096B1 (en) * 1999-05-12 2006-02-28 Microsoft Corporation Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules
US6211697B1 (en) * 1999-05-25 2001-04-03 Actel Integrated circuit that includes a field-programmable gate array and a hard gate array having the same underlying structure
US6757892B1 (en) * 1999-06-24 2004-06-29 Sarnoff Corporation Method for determining an optimal partitioning of data among several memories
JP3420121B2 (ja) * 1999-06-30 2003-06-23 Necエレクトロニクス株式会社 不揮発性半導体記憶装置
US6204687B1 (en) * 1999-08-13 2001-03-20 Xilinx, Inc. Method and structure for configuring FPGAS
US6625654B1 (en) * 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US6487709B1 (en) * 2000-02-09 2002-11-26 Xilinx, Inc. Run-time routing for programmable logic devices
US6871341B1 (en) * 2000-03-24 2005-03-22 Intel Corporation Adaptive scheduling of function cells in dynamic reconfigurable logic
US6362650B1 (en) * 2000-05-18 2002-03-26 Xilinx, Inc. Method and apparatus for incorporating a multiplier into an FPGA
US6373779B1 (en) * 2000-05-19 2002-04-16 Xilinx, Inc. Block RAM having multiple configurable write modes for use in a field programmable gate array
US7340596B1 (en) * 2000-06-12 2008-03-04 Altera Corporation Embedded processor with watchdog timer for programmable logic
US6285624B1 (en) * 2000-07-08 2001-09-04 Han-Ping Chen Multilevel memory access method
US6542844B1 (en) * 2000-08-02 2003-04-01 International Business Machines Corporation Method and apparatus for tracing hardware states using dynamically reconfigurable test circuits
US6754805B1 (en) * 2000-08-07 2004-06-22 Transwitch Corporation Method and apparatus for configurable multi-cell digital signal processing employing global parallel configuration
US6518787B1 (en) * 2000-09-21 2003-02-11 Triscend Corporation Input/output architecture for efficient configuration of programmable input/output cells
US6525678B1 (en) * 2000-10-06 2003-02-25 Altera Corporation Configuring a programmable logic device
US20020045952A1 (en) * 2000-10-12 2002-04-18 Blemel Kenneth G. High performance hybrid micro-computer
US6398383B1 (en) * 2000-10-30 2002-06-04 Yu-Hwei Huang Flashlight carriable on one's person
JP3636986B2 (ja) * 2000-12-06 2005-04-06 松下電器産業株式会社 半導体集積回路
EP1346280A1 (de) * 2000-12-20 2003-09-24 Koninklijke Philips Electronics N.V. Datenverarbeitungseinrichtung mit einer konfigurierbaren funktionseinheit
US6847370B2 (en) * 2001-02-20 2005-01-25 3D Labs, Inc., Ltd. Planar byte memory organization with linear access
US7210129B2 (en) * 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
WO2002082267A1 (en) * 2001-04-06 2002-10-17 Wind River Systems, Inc. Fpga coprocessing system
JP3580785B2 (ja) * 2001-06-29 2004-10-27 株式会社半導体理工学研究センター ルックアップテーブル、ルックアップテーブルを備えるプログラマブル論理回路装置、および、ルックアップテーブルの構成方法
US6874108B1 (en) * 2001-08-27 2005-03-29 Agere Systems Inc. Fault tolerant operation of reconfigurable devices utilizing an adjustable system clock
US6868476B2 (en) * 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7216204B2 (en) * 2001-08-27 2007-05-08 Intel Corporation Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment
US6854073B2 (en) * 2001-09-25 2005-02-08 International Business Machines Corporation Debugger program time monitor
US6798239B2 (en) * 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
US7000161B1 (en) * 2001-10-15 2006-02-14 Altera Corporation Reconfigurable programmable logic system with configuration recovery mode
US7567997B2 (en) * 2003-12-29 2009-07-28 Xilinx, Inc. Applications of cascading DSP slices
US8495122B2 (en) * 2003-12-29 2013-07-23 Xilinx, Inc. Programmable device with dynamic DSP architecture
US7472155B2 (en) * 2003-12-29 2008-12-30 Xilinx, Inc. Programmable logic device with cascading DSP slices
US7038952B1 (en) * 2004-05-04 2006-05-02 Xilinx, Inc. Block RAM with embedded FIFO buffer
JP4396446B2 (ja) * 2004-08-20 2010-01-13 ソニー株式会社 情報処理装置および方法、並びにプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600265A (en) * 1986-09-19 1997-02-04 Actel Corporation Programmable interconnect architecture
US5144166A (en) * 1990-11-02 1992-09-01 Concurrent Logic, Inc. Programmable logic cell and array
US5892370A (en) * 1996-06-21 1999-04-06 Quicklogic Corporation Clock network for field programmable gate array

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
USRE45109E1 (en) 1997-02-08 2014-09-02 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US9075605B2 (en) 2001-03-05 2015-07-07 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US8869121B2 (en) 2001-08-16 2014-10-21 Pact Xpp Technologies Ag Method for the translation of programs for reconfigurable architectures
WO2003025781A2 (de) 2001-09-19 2003-03-27 Pact Xpp Technologies Ag Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen

Also Published As

Publication number Publication date
US20040128474A1 (en) 2004-07-01
AU2060002A (en) 2002-04-22
US7595659B2 (en) 2009-09-29
AU2002220600A1 (en) 2002-04-15
JP2004517386A (ja) 2004-06-10
WO2002029600A3 (de) 2003-05-15
ATE437476T1 (de) 2009-08-15

Similar Documents

Publication Publication Date Title
WO2002029600A2 (de) Zellenarordnung mit segmentierterwischenzellstruktur
EP0951682B1 (de) IO- UND SPEICHERBUSSYSTEM FÜR DFPs SOWIE BAUSTEINE MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN
DE69637399T2 (de) Grobkörnig strukturierte integrierte Halbleiterschaltung mit Nachschlagtabellen
EP0948842B1 (de) VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
DE69534812T2 (de) Programmierbare logische Vorrichtung, die mehr als eine Konfiguration speichert, und Mittel zum Umschalten der Konfiguration
EP1329816B1 (de) Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
EP1222739B1 (de) Rekonfigurierbares gate-array
DE4425552C2 (de) Gatterarray
DE69822796T2 (de) Nutzerprogrammierbarer prozessor
DE69733931T2 (de) Kreuzvermittlungsschalter und verfahren mit beschränktem spannungshub und blockierungsfreien vermittlungswegen
WO2004038599A1 (de) Rekonfigurierbare sequenzerstruktur
DE602004009324T2 (de) Integrierte datenverarbeitungsschaltung mit mehreren programmierbaren prozessoren
DE2621882A1 (de) Dynamischer digitalspeicher mit ununterbrochen umlaufendem datenfluss
DE102005005073B4 (de) Rechnereinrichtung mit rekonfigurierbarer Architektur zur parallelen Berechnung beliebiger Algorithmen
DE69534659T2 (de) Architektur und Verbindungsmodel für programmierbare logische Schaltungen
DE19821004C2 (de) Sequenzgenerator
DE2415600C2 (de)
WO2001065829A1 (de) Verfahren und vorrichtung zum auslesen von bilddaten eines teilbereichs eines bildes
DE60221515T2 (de) Speichersystem für schleifenbeschleunigung nach wunsch
DE2459476C3 (de)
EP1466264A2 (de) Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
EP1348257A2 (de) Zellenanordnung mit segmentierter zwischenzellstruktur
DE10347975B4 (de) Einrichtung der programmierbaren Logik
DE60307321T2 (de) Schalteinheit und Verfahren für ein Telekommunikationsnetz
DE19837101C2 (de) Programmierbare 1-Bit Datenverarbeitungsanordnung

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2001986361

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2002533102

Country of ref document: JP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 2001986361

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10398546

Country of ref document: US