A multi-thread computer system comprising an array of thread units and associated sets of execution units. The thread units are designed to be interconnected in a one-dimensional array with other thread units of the array via respective multi-bit bi-directional communication paths for transferring threads and for relaying activity values between thread units. Each thread unit has a thread control unit. Each thread control unit has on its left side a first multi-bit input and a first multi-bit output, each connected to a first one of the bi-directional communication paths, and on its right side a second multi-bit input and a second multi-bit output, each connected to a second one of the bi-directional communication paths. Each thread control unit also has an activity sensor for determining the activity state of the thread unit as well as logic arranged to receive first and second input activity values from the first and second multi-bit inputs respectively, and an activity state signal from the activity sensor. The logic is configured to set the first and second output activity values to a maximum value when the thread unit is active and, when the thread unit is inactive, to set the first output activity value to a value one less than the second input activity value and to set the second output activity value to a value one less than the first input activity value. The thread unit also has a thread propagation controller responsive to the activity signals present at the first and second multi-bit inputs for controlling thread duplication and migration events. In further embodiments the thread units are interconnected in multi-dimensional arrays of various topologies.

Een multi-draadcomputersysteem dat uit een serie van draadeenheden en bijbehorende reeksen uitvoeringseenheden bestaat. De draadeenheden worden ontworpen om in een ééndimensionale serie met andere draadeenheden van de serie via respectieve multi-beetje tweerichtings communicatie wegen voor het overbrengen van draden en worden onderling verbonden voor het aflossen van activiteitenwaarden tussen draadeenheden. Elke draadeenheid heeft een eenheid van de draadcontrole. Elke eenheid van de draadcontrole heeft aan zijn linkerkant een eerste ingevoerd multi-beetje en een eerste multi-beetjeoutput, elk verbonden met een eerste één van de tweerichtings communicatie wegen, en aan zijn juiste kant een tweede ingevoerd multi-beetje en een tweede multi-beetjeoutput, elk verbonden met een tweede één van de tweerichtings communicatie wegen. Elke eenheid van de draadcontrole heeft ook een activiteitensensor voor het bepalen van de activiteitenstaat van de draadeenheid evenals logica die wordt geschikt om eerst respectievelijk te ontvangen en de tweede waarden van de inputactiviteit van de eerste en tweede multi-beetjeinput, en een signaal van de activiteitenstaat van de activiteitensensor. De logica wordt gevormd om de eerste en tweede waarden van de outputactiviteit aan een maximumwaarde te plaatsen wanneer de draadeenheid actief en, wanneer de draadeenheid inactief is, is om de eerste waarde van de outputactiviteit te plaatsen aan een waarde één dan minder de tweede waarde van de inputactiviteit en de tweede waarde van de outputactiviteit te plaatsen aan een waarde één dan minder de eerste waarde van de inputactiviteit. De draadeenheid heeft ook een controlemechanisme van de draadpropagatie ontvankelijk voor de activiteitensignalen huidig bij de eerste en tweede multi-beetjeinput voor het controleren van van de draadverdubbeling en migratie gebeurtenissen. In verdere belichamingen worden de draadeenheden onderling verbonden in multidimensionele series van diverse topologieën.

 
Web www.patentalert.com

< Equivalence class based synchronization optimization

< Reusable pulse oximeter probe and disposable bandage apparatus

> Reconfigurable computing system and method and apparatus employing same

> System and method for control of access to resources

~ 00070