TW200809529A - Computer system with increased operating efficiency - Google Patents

Computer system with increased operating efficiency Download PDF

Info

Publication number
TW200809529A
TW200809529A TW96105683A TW96105683A TW200809529A TW 200809529 A TW200809529 A TW 200809529A TW 96105683 A TW96105683 A TW 96105683A TW 96105683 A TW96105683 A TW 96105683A TW 200809529 A TW200809529 A TW 200809529A
Authority
TW
Taiwan
Prior art keywords
processor
input
instruction
processors
communication
Prior art date
Application number
TW96105683A
Other languages
Chinese (zh)
Inventor
Charles H Moore
Jeffrey Arthur Fox
John W Rible
Original Assignee
Technology Properties Ltd
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
Priority claimed from US11/355,495 external-priority patent/US7904615B2/en
Priority claimed from US11/355,513 external-priority patent/US7904695B2/en
Priority claimed from US11/441,818 external-priority patent/US7934075B2/en
Priority claimed from US11/653,187 external-priority patent/US7966481B2/en
Application filed by Technology Properties Ltd filed Critical Technology Properties Ltd
Publication of TW200809529A publication Critical patent/TW200809529A/en

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

A microprocessor system in which an array of processors communicates more efficiently through the use of a worker mode function. Processors that are not currently executing code remain in an inactive but alert state until a task is sent to them by an adjacent processor. Processors can also be programmed to temporarily suspend a task to check for incoming tasks or messages.

Description

200809529 九、發明說明: 【發明所屬之技術領域】 本發明係有關於電腦以及電腦處理 當電腦從外部來源接收指令時: '別是有關於 執行指令的方法與裝置,且相關的二 =該指令即可 間的通訊以及電腦使用其他電腦之可用讀進電腦之 本發明裝置與方法的優點在於將貝"、的能力。使用 曰μ + 將设數電腦結合在單一抖 曰曰片中,其中晶片的操作效能是非常 " 望增加操作速度更期望可藉由節省電::,因此不僅期 來提升操作效能。 降低熱產量 【先前技術】 在電腦計算領域中所期望的品質即、 度,並且持續在此領域中尋找 1' 、处理速 器。铁而,孰来此枯Γ 快逮的電腦以及處理 ',、、而热悉此技藝之人士皆瞭解 加微處理器的速度已㈣的接近限制1==增 多處理器執行分工以增加整 ;猎由使用 興趣。 正體计异速度的技術越來越感 使用多處理器必須建立垮 器之間需要大量的通ιΓ 通訊。因此處理 血資料。由;°于大部分的時間用於傳輸指令 =纟於母個額外指令的執行必 : U處理上的延遲’因此通訊量亦非常的重要:::;渐 之間指令或杳 更要傳統電腦 收電腦it且勃:、夕°、方法包括將資料或指令儲存於接 收“並且執行指令或是對資料進行操作。 3019-8670-pp 5 200809529 同樣的,在傳統技術中必須不 腦忙於一個工作 、的注忍電腦。即使電 似工作,有可能會發生其 必須使電腦離開μ τ ^^間敏感的工作請求 鈇苴並非用以阴^ 中匕括獒供輸入至電腦, ;::ΐ1Γ 本發明的範圍。在這樣的例子中,電腦 可能需要暫時回應輸入以及 j于〒電胸 二=將:在輪入或是根據輸入改變其操作之前繼續先 别:作。即使此處以以外部輸入為例, 之間ALU具有潛在衝突時也會發生同樣的狀況。如 當接收資料並且從輸入/輸出連接璋改變狀態時,先 ^支術具有兩種有效方法。其中—種為點詢(p◦⑴該連接 埠,已括以固定間隔讀取連接埠的狀態來判斷是否接收到 任何m是狀態是否被改變H點詢連接埠 相當多的時間以及資源,這些時間與資源較佳為用二 其他工作。較佳的選擇為使用”中斷,,。當使用中斷時 處理器可處理Μ的工作’並且t輸人/輸出連料/裳置 藉由已接收位元組或是狀態已改變的事實而需要注2日士 會傳送中斷要求(interrupt request,IRQ)至處理器。^ 理器一旦接收中斷要求便會結束目前的指令並且將—此 指令放在堆疊中,並且執行適當的中斷服務程式 (interrupt service routine,ISR)。一旦完成 ISr,飧 理裔會回到離開前的狀態。藉由此方法,處理器泰 α卜雨要浪 費時間來察看是否需要注意輸入/輸出裝置,而是卷 品要注思日守僅用來服務中斷程序。然而,由於使用 τ 會 造成很大的負擔,因此在許多例子中不希望使用中斷。例 3019—8670—PF 6 200809529 每#發生中斷’電腦必須暫存與其之前想要完成的工 目關的某些資料,載入與中斷有關的資料,一旦完成中 斷即接著重新載入先前工作所需的資料。 — 、…藉由使用以第四代電腦語言為基礎之系統可改善上 述糸統。第四系統-次可執行至少一個程式碼之執行序, 這通常叫做合作循環法(⑽perative r〇Mn),其 中執行f使用中央處理單元(⑽的順序為固定的,例 —執行序4永遠在執行序之後以及執行序$之前執行。 =行序係用來維持cpu並接著藉由呼叫字而自 願放茱。不同於中斷函式期間需要儲存大量的内容,在 函式』間只g要儲存一㉟資料項目以便於回存原 的工作。 兩每個執行序可能會有需要執行的工作。若工作4具有 而執仃的工作且位於工作4之前的工作3呼叫p娜E,則 工作4將會被唤醒並且執行工作直到其決定再次執行 婼二右工作4不具有需執行的工作,工作4會將控制 權傳遞至工作5。♦ T彳Λ: 4 , 田 乍呼叫將要執行輸入/輸出功能之字 %,則必須等待貪至6 士、k 置到凡成輪入/輸出,PAUSE係内建於輸入 /輸出呼叫中。 之預測性可使程式碼非常有效率。以f四為基 合作循環法可提供每個存在的執行序接具有使用CPU 的機會,其使用時間係小於先佔式多工(preemptlve m士ultitasker)決定誰是下_個取得⑽使用權的執行序之 %間。然特定工作可重寫(overwhelm)或是超越CPU。200809529 IX. Description of the Invention: [Technical Field] The present invention relates to computers and computer processing when a computer receives an instruction from an external source: 'Do not have a method and apparatus for executing an instruction, and the related two = the instruction The advantage of the device and method of the present invention that can be used for communication between the user and the computer that can be read into the computer by other computers is the ability of the " Use 曰μ + to combine the set-up computers in a single shaker. The operating efficiency of the chip is very high. It is expected to increase the operating speed by saving electricity::, so it not only improves the operating efficiency. Reducing heat production [Prior Art] The quality that is expected in the field of computer computing is the degree, and continues to find 1', processing speed in this field. Iron, and come here, the computer that is catching fast and the people who handle it, and who are familiar with this skill know the speed of adding microprocessor. (4) The proximity limit 1== Increase the processor to perform division of labor to increase the whole; Hunting is used by interest. The technology of the body-based speed is becoming more and more sensible. The use of multiple processors requires a large amount of communication between the devices. Therefore, blood data is processed. By; ° for most of the time used to transfer instructions = the execution of the parent additional instructions must: U processing delay 'Therefore, the traffic is also very important:::; Receiving the computer it and the hu:, oh °, the method includes storing the data or instructions to receive "and executing the instructions or operating the data. 3019-8670-pp 5 200809529 Similarly, in the traditional technology must not be busy with a job Note the computer. Even if the electricity seems to work, it may happen that it must make the computer leave the sensitive work request between the μ τ ^ ^, not for the yin ^ 匕 獒 for input to the computer, ;::ΐ1Γ The scope of the invention. In such an example, the computer may need to temporarily respond to the input and j: 〒 胸 = = will continue before the wheel or change its operation according to the input: even if the external input is For example, the same situation occurs when there is a potential conflict between the ALUs. For example, when receiving data and changing the state from the input/output interface, there are two effective methods for the first branch. Query (p◦(1) the connection 埠, including the state of reading the connection port at a fixed interval to determine whether any m is received is changed whether the status is changed or not, and the time and resources are better. In order to use two other work, the preferred choice is to use "interrupt,, when the interrupt is used, the processor can handle the job" and t input/output contig/spot by the received byte or state The fact that has been changed requires that the 2nd will send an interrupt request (IRQ) to the processor. Once the interrupt request is received, the current instruction will be terminated and the instruction will be placed on the stack and executed appropriately. Interrupt service routine (ISR). Once ISr is completed, the sect will return to the state before leaving. By this method, the processor will waste time to see if it needs to pay attention to the input/output device. Instead, the volume is to be used only to service the interrupt program. However, since τ is a heavy burden, in many cases it is not desirable to use the interrupt. 19—8670—PF 6 200809529 Every #interruption' computer must temporarily store certain data related to the work that it wants to complete before, load the data related to the interrupt, and then reload the previous work once the interrupt is completed. The data can be improved by using a system based on the fourth generation computer language. The fourth system can execute the execution sequence of at least one code, which is usually called the cooperative cycle method ((10) perative r〇 Mn), where f is executed using the central processing unit (the order of (10) is fixed, for example - the execution sequence 4 is always executed after the execution sequence and before the execution sequence $. = The line sequence is used to maintain the cpu and then by the call word Voluntary arrogance. Different from the need to store a large amount of content during the interrupt function, only one 35 data items should be stored in the function to save the original work. Each of the two execution sequences may have work that needs to be performed. If job 4 has a work that is stubborn and the job 3 before work 4 calls pna E, then job 4 will be woken up and work will be performed until it decides to execute again. Second right work 4 does not have the work to be performed, work 4 will pass control to work 5. ♦ T彳Λ: 4, Tian Hao call to perform the input / output function of the word %, you must wait for the greedy to 6 士, k to the wheel into the input / output, PAUSE is built in the input / output call. Predictability makes the code very efficient. The f-based cooperative loop method can provide each existing execution sequence with the opportunity to use the CPU, and its usage time is less than the preemptive multiplex (preemptlve ultitasker) to determine who is the next _ get (10) use right Execution of the %. However, specific work can be overwhelm or beyond the CPU.

3019-8670-PF 7 200809529 作效:由:小電腦系統中的漏電流可取得其他區域的操 雷追求較小裝置的同時,由於絕緣層變薄因而增 二 =流。在不久的將來,漏電可達到一半的有效電力。 曰曰用休眠電晶體可抑制漏電流。休眠電晶體的表現像 ’错由當邏輯方塊不需要電源供應時隔離或切斷電 應與邏輯方塊。如_ Crepps於2〇〇6年7月24日 在^nbedded.c⑽中所公開之,,如何提供有效功率架構” 文早中所揭露’如此可降低2_1〇〇〇倍的漏電流。 然而,使用休眠電晶體具有幾項缺點。在系統中必須 考量t多因素以有效使用這些電晶體。休眠電晶體必須具 :較兩的臨界電壓,否則休眠電晶體將會具有大的漏電 流。如此必須修正⑽s製程來提供適用於休眠電晶體之 局臨界電壓裳置以及適用於邏輯閘之低臨界電塵裝置。再 勺休眠電曰曰體會增加面積的額外開銷以及將電晶體 導通或關閉之動態功率消耗。 為了保證電路的功能性,必須謹慎設計休眠電晶體的 尺寸以降低其導通時的壓降。兩個於不同時間開關的閘極 可共用休眠電晶體。然而,此方法並不實用於大的電 路。因此需要演算法來判斷實現大電路中休眠電晶體的最 佳方法。FarZenFaUah等人係於2〇〇4年所公開的文章,, 待命與主動漏電流控制以及CM〇s VLSI電路的最小化,,中 揭露休眠電晶體的其他問題’包括在電路中產生雜訊並且 當用來將正反器從接地點或是供應電壓切斷時會遺失資 料。因此需要一種裝置以及/或方法來降低漏電流並且提3019-8670-PF 7 200809529 Effectiveness: By: Leakage current in small computer systems can be achieved in other areas of operation. While pursuing smaller devices, the insulation layer is thinner and therefore increased by two. In the near future, leakage can reach half of the effective power.休眠 Sleeping transistor can suppress leakage current. A dormant transistor behaves like a 'error' that isolates or cuts off the power and logic blocks when the logic block does not require a power supply. As disclosed in _Crepps on July 24, 2002 in ^nbedded.c(10), how to provide an effective power architecture, as disclosed in the text, can reduce the leakage current by 2_1〇〇〇. However, There are several disadvantages to using a dormant transistor. In the system, multiple factors must be considered to effectively use these transistors. The dormant transistor must have: a threshold voltage of two or more, otherwise the dormant transistor will have a large leakage current. Correct the (10)s process to provide a local critical voltage for the dormant transistor and a low-critical dust device for the logic gate. The additional power of the dormant cell will increase the area overhead and the dynamic power to turn the transistor on or off. In order to ensure the functionality of the circuit, the size of the sleep transistor must be carefully designed to reduce the voltage drop when it is turned on. The gates of the two switches at different times can share the sleep transistor. However, this method is not practical for large The circuit is therefore required to determine the best way to implement a dormant transistor in a large circuit. FarZenFaUah et al. , standby and active leakage current control, and minimization of CM〇s VLSI circuits, revealing other problems with sleepy transistors' including generating noise in the circuit and when used to ground the flip-flop from ground or supply voltage Data is lost when disconnected. Therefore, a device and/or method is needed to reduce leakage current and

3019-8670-PF 8 200809529 * 供較有效率且較沒 °碭的電腦處理器系統。 【發明内容】 減少傳送、接收的步驟^ 訊息於電腦間通訊是有且使用資料或指令型式之 所消耗的時間與資源去。期望可降低或消除中斷期間 咖是有益處的。、秋 ’將中止函式擴大為超過一個 何系統明顯提到上述明人認為在先前技術中沒有任 在本毛明所揭露之電腦處理器陣列中皆將 以及熱消耗最小化,並 j中白將功率使用 器陣列中未執行摔作& d开々此=大化。在電腦處理 矾仃备作的處理器(又叫 於閒置且警戒狀態。當位 u或核心)係位 不會消耗任何電力,且a、一’“,閒置節點或核心 行通料虽相部節點或接聊企圖與該節點進 卽點會進入啟動狀態。在執行進入工作之 後’郎點將會返回閒置狀 止。 ]置狀怨直到其他工作傳送至節點為 :核心正在執行核心或指令且相鄰核心與執行核心 訊時可實現陣列的效率。核心可以被編程為偶爾中 止來核查進入訊息’而不是如傳統電腦系統一樣中斷執行 核心的處理。若有等待的進入訊息’則執行核心可於中止 後對進人訊息作反應,並接著繼續執行原本的工作。 為了讓本發明之目的、特徵、及優點能更明顯易懂, 下文特舉較佳貫施例,並配合所附圖示做詳細之說明。本 發明沉明書提供不同的實施例來說明本發明不同實施方 3019-8 67 0~pp 9 200809529 L的技#特徵。其中,實施例中的各元件之配置係為說明 用並非用以限制本發明。且實施例中圖式標號之部分 重趨,在或 A/r ^ ^ ,、― 了簡化說明,並非意指不同實施例之間的關聯 【貫施方式】 气:讓本t明之上述和其他目的、特徵、和優點能更明 、^下文特舉出較佳實施例,並配合所附圖式,作說 實施例: :讓本I明之目的、特徵、及優點能更明顯易懂, :文特舉較佳實施例,並配合所附圖示做詳細之說明。本 她兒明書提供不同的實施例來說明本發明不同實施方 式:技術特徵。其中,實施例中的各元件之配置係為說明 I非用以限制本發明。且實施例中圖式標號之部分 係為了簡化說明,並非意指不同實施例之間的關聯 接下來將說明操作於叫 ” 置且警戒”狀態的處理,、,:者:二且警戒,,或是,,閒 丁个A 兩者白代表處理器的函式位於 不茜要使料力之暫時中止或是停止狀態。同肖,處理器 1:二f:悲或疋位於準備好當被指示時立即開始處理 函式的狀態。當閒置虛5 醒,,或是,,被啟動” 接收處理指令時叫做,’被喚3019-8670-PF 8 200809529 * For more efficient and less computer processor systems. SUMMARY OF THE INVENTION The steps of reducing transmission and reception are as long as the time and resources consumed by the data or command type are used for communication between computers. It is expected that the period of interruption can be reduced or eliminated. , Autumn 'expanded the function of the suspension to more than one system. It is obvious that the above-mentioned people think that in the prior art, the computer processor array disclosed in this document will not be minimized, and the heat consumption will be minimized. Do not perform the fall & d in the power consumer array. The processor that is being processed by the computer (also called idle and alert state. When the bit u or the core) does not consume any power, and a, a ', idle node or core line is the same as the phase The node or the connection attempt and the node will enter the startup state. After the execution enters the work, the lang point will return to the idle state. The blame is until the other work is transmitted to the node: the core is executing the core or the instruction and the phase The efficiency of the array can be achieved by the neighboring core and the execution of the core message. The core can be programmed to occasionally abort to check the incoming message 'instead of interrupting the execution of the core as in the case of a traditional computer system. If there is a waiting message, the core can be executed. After the suspension, the response to the incoming message is continued, and then the original work is continued. In order to make the objects, features, and advantages of the present invention more obvious and easy to understand, the following is a preferred embodiment and is accompanied by the accompanying drawings. DETAILED DESCRIPTION OF THE INVENTION The present invention provides a different embodiment to illustrate the features of the different embodiments of the present invention 3019-8 67 0~pp 9 200809529 L. The configuration of the various elements in the examples is not intended to limit the present invention, and the parts of the drawings in the embodiments are repetitive, and the descriptions in the case of A/r^^, ― are simplified, and do not mean different embodiments. The relationship between the above and other objects, features, and advantages will be more apparent, and the preferred embodiments will be described hereinafter with reference to the accompanying drawings. The purpose, features, and advantages of the present invention will become more apparent and obvious. The preferred embodiments are described in detail with reference to the accompanying drawings. The invention is not limited to the specific embodiments, and the components in the embodiments are not intended to limit the present invention. The relationship between the next will explain the operation of the operation and the alert state, and:: 2: and alert, or,,,,,,,,,,,,,,,,, Temporarily suspend or stop the material State. Same as Xiao, processor 1: two f: sorrow or sorrow is ready to start processing the state of the function as soon as it is instructed. When idle waking up, or, is activated, it is called when receiving processing instructions. 'called

3019-8670-PF 10 200809529 實現本發明的方式為個別電腦處理器之陣列。第丄圖 顯示陣列1G的示意圖。電腦陣列1G具有複數(此實施例 有2“電腦)電腦12(在此實施例的陣列中有日寺又叫做核 心或節點)。在此實施例中,所有的電腦12皆設置於單一 晶片14中。根據本發明’每個電腦12通常皆為具有獨立 計算能力的電腦,以下將會有更詳細的說明。電腦Μ係 藉由複數(以下會詳細說明其數量)内連資料匯流排Μ連 接在一起。在此實施例令,資料匯流排Μ為雙向非同步 高速平行資料匯流排,然而亦可使用其他内連裝置來達成 此目的。本發明的優點在於實施例所述之陣列1〇不僅做 為電腦12之間的非同步資料通訊,個別電腦^亦操作於 内部非同步模式中。例如,由於時脈信號的分佈不需要 及整個電腦陣列1〇,因而節省大量的電力。再者,不用八 佈時脈信號就避免了許多可能會限制陣列1〇尺寸或是刀生 成其他困難的時序問題。同樣的,由於電腦中不呈有: 脈,因此當電腦不執行指令時幾乎不會使用電力,個 別電腦之非同步操作可節省大量的電力。 熟悉此技藝之人士將會發現,為了更清晰的顯 圖,因此省略了晶片14中額外的元# , 貝卜的70件。廷些額外的元件 匕括功率匯流排、外部連接塾以及其他常見的微處理琴曰 片,然其並非用來限定本發明的範圍。 曰曰 處理為' 12 e是複數虑王甲哭1 9 τ+τ 疋歿要文處理裔12中不位於陣列1〇之 的電腦。也就是,處理器12e具有四個與其相鄰且正= 處理器 12a、12b、12r w IN 的 12c以及12d,此僅為本發明的實施例 3019-8670-PF 11 200809529 的乾圍,在其他實施例中亦可使用大於四個相鄰處理器。 以下將會詳細討論陣列1G中處理器12之間的通訊與處理 fl2a幻2eii個群組的關聯。如第j圖所示,内側處理 為(例如12e)可透過匯流排16直接與其他四個處理器進 =通訊。在下列討論中,除了設置料列1G腳的處理 為12只能直接與其他三個處理器進行通訊,以及設置於 車列角落處理器12只能直接與其他兩個處理器進行通訊 之外,上述原則可套用至陣列中的所有處理器丨2。 第2圖為部分第丨圖的詳細圖示,在第2圖中僅顯示 包^處理器12a至12e的某些處理器。如第2圖所示' 每 個貧料匯流排16皆包括讀取線18、寫入線20以及複數資 料線22(在此實施例中具有18條資料線)。資料線22通常 T以並列的方式同步傳送一個十八位元指令字中的所有 位元值得注意的是,本發明實施例中的某些處理器12 為相鄰處理器的鏡像。然而,不論處理器12皆為相同方 向或是作為相鄰處理器的鏡像都不是本發明的重點。 根據本發明的方法,處理器12(例如處理器12e)可將 其一、二、三或是所有四條讀取線18設定為高電位,使 其準備好接收分別來自一、二、三或是所有四個相鄰處理 器12的資料。同樣的,處理器12也可以將其—、二、二 或疋全部四條讀取線2 0設定為高電位。 當相鄰的處理器l2a、12b、12c或12d之一者將介於 其本身舆處理器12e之間的寫入線20設定為高電位時, 若處理器12e已將對應的讀取線18設定為高電位,則處 3019-8670-pf 12 200809529 理器1 2a、1 2b、1 2c或1 2d會透過相關的資料線22傳送 一字(word)至處理器12e。接下來,傳送處理器12將會^ 放寫入線20,且接收處理器(在此實施例中為12幻會將寫 入線20以及讀取線18拉低為低電位。接下來,接收處理 器12e將會回應傳送處理器12,告知已收到資料。值^注 意的是,上述說明並非用來表示事件發生的順序。在=際 的刼作上,此實施例中的接收處理器可以在傳送處理哭U 賴停止拉高)寫入線2。之前,試著將寫入線二稍:設 定為低電位。在這樣的例子中,當傳送處理器Μ釋放其 寫入線20的同時,寫入線2〇將會被接收處理器拉為 低電位。值得注意的是,當傳送處理器12的寫入線別進 入高電位時已傳送資料或程式碼,因此接收處理器(We) 僅需要即時閂鎖資料/程式碼。 若處理器12e企圖寫入處理器12a,則處理器i2e會 將設置於處理器、12e與處理器12a之間的寫入線設定 士高電位。若處理器12a沒有將設置於處理器仏與處理 器12a之間的讀取線18設定為高電位,則處理器會 等待處理1 12a將讀取線2G設定為高電位為止。當對^ 的寫入線20與讀取線㈣皆為高電位時傳送位於;料: 22上等待被傳送的資料。此後,#傳送處理器仏釋放設 ,於兩處理器12a與12e之間的讀取線18時,接收處理 器12(在此實施例為12a)將其設定為低電位。 每當處理器12(例如處理器12e)在不使用電力的情況 字八寫入線2 0之一者设定為高電位時,寫入如預期只 3019-8 67〇~ρρ 200809529 需簡單的等待直到取得來自適當相鄰處理主 料,除非即將被傳送資料的處 ° 的请求貧 設定為高電位㈣樣的例子取線u 的,每當處理器12在不使用電力 貝料)。同樣 災用哥力的愔況 之至少一者設定為高電位時,^ 、,、硬取線18 等待直到連接至已選取處理器 而間早的 口口 的寫入線2 0變為古帝々 而於兩處理器12之間傳送指令字。 欠為同电位 如上所述,許多潛在的裝置以 12具有上述功能。铁而 或方法可使處理器 的内部通當I施财所述之處理器12 的内。P通承疋非同步操作(為 資料)。也就是說,指令通常^步的方法傳送 士 相7通韦疋依序完成。當 項取指令時’必㈣到該指令執行完畢後才可㈣i 動作(或是直到被,,重設,,等指令中斷時)。在先前技術^ 取或寫入指令或是當讀取或寫入指令完成時才合= 衝來執行下-個指令(讀取 _ 、 來實現)。 ?日7而要精由其他實體 第3圖顯示第1圖與第2圖甲處理器12之 一 ^又配置的方塊圖。如第3圖所示,處理器12通常是呈有 自己的RAM 24與R〇M 26之自包含處理写。 、/、 理器12通常又叫做個別 Ρ σ 所述,處 晶片中。魏別核心,在此實施例中係結合於單 處” ;2的其他基本元件為返回堆疊(以一 “3019-8670-PF 10 200809529 The manner in which the present invention is implemented is an array of individual computer processors. The figure shows a schematic diagram of the array 1G. The computer array 1G has a plurality (this embodiment has a "computer" computer 12 (in the array of this embodiment, there is a Japanese temple called a core or a node). In this embodiment, all of the computers 12 are disposed on a single wafer 14. According to the present invention, each computer 12 is usually a computer with independent computing power. The following will be described in more detail. The computer system is connected by multiple numbers (the number of which will be described in detail below). In this embodiment, the data bus is arranged as a two-way asynchronous high speed parallel data bus, but other interconnect devices may also be used for this purpose. The advantage of the present invention is that the array described in the embodiment is not only As the asynchronous data communication between the computers 12, the individual computers are also operated in the internal asynchronous mode. For example, since the distribution of the clock signals does not need to be 1 整个 of the entire computer array, a large amount of power is saved. Eliminating the eight-bucket clock signal avoids many timing problems that may limit the size of the array or other difficulties in the knife generation. Similarly, since the computer does not present: Therefore, when the computer does not execute the command, almost no power is used, and the asynchronous operation of the individual computer can save a lot of power. Those skilled in the art will find that the additional 14 in the wafer 14 is omitted for clearer visualization. Yuan#, Beb's 70. The additional components include power busbars, external connectors, and other common micro-processing hammers, which are not intended to limit the scope of the invention. e is a plural Wang Wang crying 9 9 τ + τ 疋殁 处理 处理 处理 处理 处理 裔 裔 12 12 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 12c and 12d of 12r w IN, which is only a dry circumference of embodiment 3019-8670-PF 11 200809529 of the present invention, and more than four adjacent processors may be used in other embodiments. Array 1G will be discussed in detail below. The communication between the processors 12 is related to the processing of the fl2a 2eii groups. As shown in the figure j, the inner processing (for example, 12e) can directly communicate with the other four processors through the bus bar 16. In the following discussion, except The processing of the 1G pin is 12, which can only communicate directly with the other three processors, and the processor 11 can only directly communicate with the other two processors. The above principle can be applied to the array. All of the processors 丨 2. Fig. 2 is a detailed illustration of a partial diagram, and only some of the processors of the processors 12a to 12e are shown in Fig. 2. As shown in Fig. 2, each of the poor The material bus 16 includes a read line 18, a write line 20, and a plurality of data lines 22 (in this embodiment, 18 data lines). The data line 22 typically transmits a octet command synchronously in a side-by-side manner. It is noted that all of the bits in the word processor 12 are mirror images of adjacent processors. However, whether the processor 12 is in the same direction or as a mirror image of an adjacent processor is not the focus of the present invention. In accordance with the method of the present invention, processor 12 (e.g., processor 12e) can set one, two, three, or all four read lines 18 to a high potential, ready to receive one, two, three, respectively. Information for all four adjacent processors 12. Similarly, processor 12 can also set all four read lines 20 of its —, two, two, or 疋 to a high potential. When one of the adjacent processors 12a, 12b, 12c or 12d sets the write line 20 between its own processor 12e to a high level, if the processor 12e has placed the corresponding read line 18 If it is set to high potential, then 3019-8670-pf 12 200809529 The processor 1 2a, 1 2b, 1 2c or 1 2d will transmit a word to the processor 12e through the associated data line 22. Next, the transfer processor 12 will place the write line 20, and the receive processor (12 in this embodiment will pull the write line 20 and the read line 18 low to a low level. Next, receive The processor 12e will respond to the delivery processor 12 informing that the data has been received. Values Note that the above description is not intended to indicate the order in which the events occurred. In the case of the operation, the receiving processor in this embodiment It can be written in the transfer processing crying U 停止 stop pulling high) write line 2. Before, try to set the write line two slightly: set to low. In such an example, while the transfer processor is releasing its write line 20, the write line 2 will be pulled low by the receive processor. It is worth noting that the data or code has been transmitted when the write line of the transfer processor 12 enters a high potential, so the receive processor (We) only needs to latch the data/code immediately. If the processor 12e attempts to write to the processor 12a, the processor i2e sets the write line set between the processor 12e and the processor 12a to a high potential. If the processor 12a does not set the read line 18 provided between the processor 仏 and the processor 12a to a high level, the processor waits for the processing 1 12a to set the read line 2G to a high level. When both the write line 20 and the read line (4) of the ^ are high, the transfer is located on the material: 22 waiting for the data to be transmitted. Thereafter, the #transfer processor 仏 releases the read line 18 between the two processors 12a and 12e, and the receive processor 12 (12a in this embodiment) sets it to a low potential. Whenever the processor 12 (for example, the processor 12e) is set to a high level in the case where the word eight write line 20 is not used, the write is as expected only 3019-8 67〇~ρρ 200809529 Wait until the request from the appropriate neighboring processing material is taken, unless the request for the data to be transmitted is set to a high potential (four)-like example to take the line u, whenever the processor 12 is not using power beaker). When at least one of the same situation of the disaster is set to a high potential, ^, ,, hard take line 18 wait until the write line 20 that is connected to the mouth of the selected processor is changed to Gudi The instruction word is transferred between the two processors 12. Under-same potential As mentioned above, many potential devices have the above functions at 12. The iron or method may cause the internals of the processor to be within the processor 12 as described in I. P pass-through non-synchronous operation (for data). That is to say, the instruction usually sends the method to the phase. When the instruction is fetched, it must be (4) until the execution of the instruction is completed (4) i action (or until the instruction is interrupted by , , reset, etc.). In the prior art, when the instruction is fetched or written, or when the read or write instruction is completed, the next instruction is executed (read _, to implement). ? The other day is to be refined by other entities. Figure 3 shows the block diagram of the first and second processors. As shown in FIG. 3, processor 12 is typically self-contained with its own RAM 24 and R〇M 26. , /, processor 12 is also commonly referred to as individual Ρ σ, in the wafer. The Weibe core, in this embodiment, is combined with a single ""; the other basic components of 2 are the return stack (with a "

28、才曰令區30、算術邏輯單元(則)32、資料堆疊^、用 3019-8670-PF 14 200809529 耱 來將指令解碼的解碼邏輯 ^ 槽程序11 42。熟悉此 技#之人士通常對以堆 来^ , 隹且為基礎的電腦之操作非常孰 Γ 此^例的處理器12。處理器12為具有次斜始、 豐34與獨立返回堆疊28夕雔 ' 貝〆隹 且U之雙堆豐處理器。第 沿著資料堆疊34之τ I 弟 θ亦-、員不 隹且Μ之τ暫存器44與s暫存器心 用於返回堆疊以及資料 Q, 种堆豎的裱形暫存器陣列28a盥 34a 〇 ” 在本發明實施例中所述處 考_抑10 & 札弋慝理為12具有四個與相鄰 處理為、12進行通訊的通訊卓 a · 連接埠38。通訊連接埠38為三28, the decoding area 30, the arithmetic logic unit (then) 32, the data stack ^, the decoding logic trough program 11 42 for decoding the instruction with 3019-8670-PF 14 200809529 耱. Those who are familiar with this technology are generally very accustomed to the operation of a computer based on a stack of computers. The processor 12 is a dual-stack processor with a sub-slope start, a 34 and an independent return stack. The first along the data stack 34 τ I θ - 、 、 、 、 、 、 τ τ τ 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及 以及盥34a 〇" In the embodiment of the present invention, the test 10 is spoof 10 & Sapporo is 12 having four communication communication terminals 38 communicating with the adjacent processing, 12. Communication port 38 For three

悲(tri-state)驅動器,| 右 M pH /、哥竭狀4、接收狀態(將信號 驅動至處理器12中)以及傳穿 叹得运狀您(從處理器丨2驅動出 號)。當然,若特定處理5|】?开非/认击 疋地态12並非位於陣列(第1圖)的内 部(例如處理器12e)’則基於上述目的,至少—通訊蜂將 不會用於該特定處理器。然而,這些緊鄰於晶片14邊緣 的通訊連接埠38可具有額外的電路(可以設置於處理器 1 2内邛或疋與處理器丨2相關的外部),因此通訊連接埠 38可作為外部輸入/輸出連接埠39(參照第】圖)。這樣的 外部輸入/輸出連接蟑39包括USB連接埠、RS232序列匯 流排連接埠、並列通訊連接蟑、類比至數位以及/或數位 至類比轉換連接埠以及許多其他可能的變化,然其並非用 來限定本發明的範圍。在此實施例中,不論使用任何類型 的額外或修正電路,處理額外輸入/輸出連接埠扣所接收 之指令以及/或資料的操作方法係與此處所說明處理内部 通訊連接埠38所接收之指令以及/或資料的操作方法相 3019-8 670-pf 200809529 同。第1圖係挑選設置於邊緣之具有相關介面電路8〇(以 方塊圖的形勢顯示)之處理器12f透過外部輸人/輸出連接 埠39與外部裝置82進行通訊。 根據本發明實施例所述之指令區3〇包括數個暫存器 40,包括A暫存器40a、B暫存器以及p暫存器心。 在此實施例中,A暫存器4Ga為全十八位元暫存器,而β 暫存器40b以及暫存器4Gc為九位元暫存器。ΐ/〇暫存器 47(18位元)係設置於記憶體(ROM 26與KAM 24)與通訊連 接埠38之間。以τ將會詳細說日月i/G暫存器47。 丰貫把例之處理器12係用來執行本機(native)第 代語言(forth i anguage)指令,然其並非用來限定本發明 的耗圍。熟悉第四代處理器語言之人士皆瞭解,複雜的第 :代扣令(第四代”係根據本機處理器指令建立至處理 2中。第四代字的集合叫做字典(dicti〇nary)。在其他語 :中又叫做函式庫⑴brary)。接下來會對處理器Η從 AM 24、ROM 26或是直接從資料匯流排16(第2圖)之一 ::時讀取十八個位元做詳細說明。然而,由於第四代語 :中大部分的指令(QPeran㈠ess指令)係直接從堆疊Μ ::34取得其運算元,其指令長度通常只有五個位元,使 =㈣令可以包含於單-的十八位元指令字中,並且會 三個位元之受限的指令集中選取群組中的最後 弟4圖顯示指令字4 8 際上指令字48可包括指令 的示意圖。值得注意的是,實 資料或是兩者之組合。指令 3〇19~867〇~pp 16 200809529 字48係由十八個位元5〇所組成。由於這是二進位電腦, 因此每個位元50將會是〇或丨。如上所述,十八位元寬的 指令字48的四個插槽可包含多達四個指+ 52,分別為插 槽零54a、插槽一 54b、插槽二54c以及插槽三54d。根據 本發明實施例所述之十人位元指令字48永遠會被當作整 體來讀取。ms在指令字48中可能會具有多達四 個指令因此電腦12的指令集中包括無作業(n〇 uction, no op)指令’以於不需要或不期望使用所 有可用插槽54的情況下使用。 除了上述暫存器之外,指令區30亦具有18位元指令 暫存器30a來儲存目前使用的指令字“,且額外的5位元 運算元暫存器_係用來儲存目前所執行特以旨令字中的 指令。 :上所述’當反對指令為不需要輸入或輸出的 =母《令52的14位元66係、根據該指令是否為讀取 =寫=令而設定。指令52中剩下的位元5q係將特定運 二兀的剩餘部分提供給該指令。在讀取或寫入指令中,至 少一個位元可用來指出資料從 讀取資料或是將資料寫人特_ 、那個位置 據本發明實施例,即將寫人\處心12的那個位置。根 “(資料堆疊34的頂部資料水遠來自T暫存器 =置將其讀入τ暫存器“或是其他指令區3。: ==例中的資料或指令可以此處說明的方法通訊,因 而可以直接從諸“排16執行指令。The tri-state driver, | right M pH /, the buddy 4, the receiving state (driving the signal into the processor 12), and the pass-through sigh you (drive the number from the processor 丨2). Of course, if the specific processing 5|]? The open/negative state 12 is not located inside the array (Fig. 1) (e.g., processor 12e). Based on the above, at least the communication bee will not be used for the particular processor. However, these communication ports 38 adjacent to the edge of the wafer 14 may have additional circuitry (which may be placed in the processor 12 or external to the processor 丨2) so that the communication port 38 can be used as an external input/ The output port 埠39 (refer to the figure). Such external input/output ports 39 include USB ports, RS232 serial bus ports, parallel communication ports, analog to digital and/or digital to analog switching ports, and many other possible variations, but are not used The scope of the invention is defined. In this embodiment, regardless of the use of any type of additional or correction circuitry, the method of processing the instructions and/or data received by the additional input/output connection button is in accordance with the instructions received by the processing internal communication interface 38 described herein. And/or the method of operation of the data is 3019-8 670-pf 200809529. In the first drawing, the processor 12f having the associated interface circuit 8 (shown in the block diagram) disposed at the edge communicates with the external device 82 via the external input/output connection 埠39. The instruction area 3A according to the embodiment of the present invention includes a plurality of registers 40, including an A register 40a, a B register, and a p register. In this embodiment, the A register 4Ga is a full eight-bit register, and the beta register 40b and the register 4Gc are nine-bit registers. The ΐ/〇 register 47 (18-bit) is placed between the memory (ROM 26 and KAM 24) and the communication port 38. The τ will be described in detail in the sun and moon i/G register 47. The processor 12 of the example is used to execute native native forge an instruction, which is not intended to limit the cost of the present invention. Those familiar with the fourth-generation processor language understand that the complex: the withholding order (fourth generation) is built into the processing 2 according to the native processor instructions. The collection of fourth-generation words is called the dictionary (dicti〇nary). In other languages: it is also called the library (1)brary. Then, the processor will read eighteen from AM 24, ROM 26 or directly from one of the data bus 16 (Fig. 2):: The bit is described in detail. However, since the fourth generation: most of the instructions (QPeran (ess) ess instruction) directly obtain its operands from the stack Μ::34, the instruction length is usually only five bits, so that = (four) orders Can be included in a single-eighteen-bit instruction word, and a limited instruction set of three bits selects the last brother in the group. 4 shows the instruction word. 4 The instruction word 48 can include a schematic diagram of the instruction. It is worth noting that the actual data or a combination of the two. Instruction 3〇19~867〇~pp 16 200809529 The word 48 is composed of eighteen bits and five 。. Since this is a binary computer, each Bit 50 will be 〇 or 丨. As mentioned above, four of the eighteen-bit wide instruction words 48 The slot may contain up to four fingers + 52, which are slot zero 54a, slot one 54b, slot two 54c, and slot three 54d. The ten-digit instruction word 48 is always forever according to an embodiment of the present invention. Will be read as a whole. ms may have up to four instructions in instruction word 48 so the instruction set of computer 12 includes no job (n〇uction, no op) instructions for unnecessary or undesired use In the case of all available slots 54. In addition to the above registers, the command area 30 also has an 18-bit instruction register 30a for storing the currently used instruction word ", and an additional 5-bit operand is temporarily stored. _ is used to store the instructions in the currently executed special command word. : The above mentioned 'when the objection command is the 14-bit 66 system of the parent/sale 52 that does not require input or output, and is set according to whether the instruction is a read = write = command. The remaining bits 5q in instruction 52 provide the remainder of the particular transport to the instruction. In a read or write command, at least one bit can be used to indicate whether the data is to be read from or read from the data. That location is to be written to the location of the person 12 according to an embodiment of the present invention. Root "(The top data of data stack 34 is far from the T register = put it into the τ register) or other command area 3.: == The data or instructions in the example can be communicated in the way described here. Therefore, the instructions can be executed directly from the "rows 16".

3019-8 67 0-PF 17 .200809529 ^ ^元50之至少一者將用來指示哪一個連接埠38被設 定為讀取或寫人。後來的操作係選擇性的藉由使用至少一 位兀來•曰定暫存器40而完成’例如Α暫存器40a、Β暫存 40b等#。在這樣的例子中,指定暫存器仙將會預載 具有對應於每個連料38之位元的資料(同樣的,具有潛 在實體的處理器12可企圖與外部通訊連接蟑㈣進行通 訊(例如記憶體_24或_26))。例如,特定暫存器 40中的每四個位元可對應至每個上連接痒心、右連接蜂 38、左連接蟑38或是下連料38d。在此實施例中將會藉 、、位置為1所對應之連接埠38來進行通訊。如上 所述’本發明f施例預期讀取運算元可設定至少 3 8來進行單一指令通訊。 接:來的實施例將假設處理器12e企圖寫入處理器 :2c ’儘官在此實施例中相鄰處理器】2之間皆可以進行通 處理器…執行寫人指令時’所選取的寫入線 “设定為高電位(在此實施例中為處理器…與… 之間的寫入線2 〇)。甚料_ ΛΑ二士 、 右對應的讀取線18已經位於高電位, 則可以立即從所選取的 傳送資料。再者,若對庫『跑、取的通訊連接璋38 右對應的頌取線18不是高電位,則處 理器12e將會停止操作 。电伹則處 探作直到對應的讀取線18 以下將說明當完成讀取或寫入 也位 恢復操作。當介於處…2="時處理器126如何 及對應的寫人線^;之間的讀取線18以 持在高電位的處理心=時,分別將線18與2。維 益12將會釋放線18舆20。在此實施例3019-8 67 0-PF 17 .200809529 ^ At least one of the elements 50 will be used to indicate which port 38 is set to read or write. Subsequent operations are selectively accomplished by using at least one bit to determine the register 40, such as the scratchpad 40a, the scratchpad 40b, and the like. In such an example, the designated register will preload the data with the bits corresponding to each of the links 38 (again, the processor 12 with the potential entity can attempt to communicate with the external communication port (4) ( For example, memory _24 or _26)). For example, every four bits in a particular register 40 may correspond to each of the upper connected itching, the right connecting bee 38, the left connecting port 38, or the lower linking 38d. In this embodiment, the port 38 corresponding to the location 1 is used for communication. As described above, the embodiment of the present invention expects that the read operand can be set to at least 38 for single instruction communication. The following embodiment will assume that the processor 12e attempts to write to the processor: 2c 'to the extent that the adjacent processor in this embodiment can't pass through the processor... when executing the write command' The write line is set to a high potential (in this embodiment, the write line 2 处理器 between the processor ... and ...). _ _ ΛΑ 、, the right corresponding read line 18 is already at a high potential, Then, the data can be transmitted immediately from the selected data. Further, if the capture line 18 corresponding to the right of the communication connection 跑38 is not high, the processor 12e will stop the operation. Until the corresponding read line 18 will be described below, when the read or write is completed, the bit recovery operation is also performed when the intersection between the processor 126 and the corresponding write line ^; Line 18 will hold lines 18 and 2 respectively when held at a high potential of processing heart = 0. Weiyi 12 will release line 18 舆 20. In this embodiment

3019-8670-PF 18 200809529 中’傳送處理器12e會將寫入線μ %拄六a ; ,. 、准持在尚電位,而拯 收處理器…會將讀取、線20維持在高電位。接下來,接 收處理器…將會把線18與2()拉低為低電位 上接 接收處理器12c可能會在傳送處理器仏釋、^, 之前將線18與20拉低為低電位。铁 ^ ^ 18 比w κ > 然而’由於線18與20 ““並且閃鎖,直到將其問鎖為高電位的處理哭12 :線18與2°釋放才可能成功的將線18與2。拉低為低電 當:資料匯流排16中的線18與2〇都被拉低時 悲),母個處理器12e與12C合將w狀 高電位。 C曰將其内部回應線72設定為 從上述說明可以瞭解,不 器!2c或是處理器12〇先° <自…先寫入處理 先項取處理器12e,其操作皆相同。 刼作係於處理器12e與12c皆 19p . 19屯 白就、,者%凡成,且不論哪一處 理m戈12c先就、緒,第—處理器12將會進 態直到另-處理器傳輸完 上述步驟,當寫入處理器12=姐在此以其他觀點來說明 寫入與讀取指令時,寫;J =接收處理器12c分別執行 ”'处里器12e與接收處理器! 2C比 會進入閒置狀態,當讀取# 1D 处益12c白 時,後者幾伞 18與寫入線20皆為高電位 野,後者幾乎立即推 + ., 進入父易反應(ti*ansacti〇n reactive),反之初始交 I〇n 能直到第處理器12可維持閒置狀 心直到弟一處理盗12準備好完成該程序。 發明人相信回應信號或 非同步通訊的主要特饩士 此我置間有效 政。在先前技術中,大部分裝置間的3019-8670-PF 18 200809529 The 'transfer processor 12e will hold the write line μ %拄6 a ; , . , to the potential, and the recovery processor... will maintain the read and line 20 at a high potential. . Next, the Receive Processor... will pull Lines 18 and 2() low to the upper level. Receive processor 12c may pull lines 18 and 20 low until the transfer processor releases, ^. Iron ^ ^ 18 than w κ > However 'because line 18 and 20 "" and flash lock until the lock is held high for the treatment of crying 12: line 18 with 2 ° release is possible to succeed line 18 and 2 . Pulling low to low power When the lines 18 and 2 in the data bus 16 are pulled low, the mother processors 12e and 12C will be w-shaped high. C曰 Set its internal response line 72 to be able to understand from the above description, no! 2c or the processor 12 ° first < from ... first write processing The first item takes the processor 12e, the operation is the same. The processing is based on the processors 12e and 12c are 19p. 19屯 white, the %%, and no matter which processing mgo 12c first, the first processor 12 will enter the state until the other processor After the above steps are transmitted, when the write processor 12=Sister here writes the read and read instructions from other viewpoints, the write is performed; J=the receive processor 12c respectively executes the ''processor 12e and the receive processor! 2C The ratio will enter the idle state. When reading #1D, the benefit of 12c white, the latter umbrella 18 and the write line 20 are both high potential fields, and the latter pushes the mouse almost immediately. It enters the father's easy reaction (ti*ansacti〇n reactive) ), on the other hand, the initial delivery can be until the first processor 12 can maintain the idle state until the younger one handles the pirate 12 ready to complete the procedure. The inventor believes that the main special gentleman of the response signal or asynchronous communication is effective. Politics. In the prior art, most of the devices

3019-8670-PF 19 200809529 通訊皆受到時脈的控制,且 w a ^ ^ 傳迗扁置無法直接知道接收妒 置疋否已正確的接收到資 叹凌 或 、 错由檢查總和操作之方法可 確保正確的接收資料,但不I 、 -y4 .. u. 曰、知作已完成的訊息直接指 不傳运裴置。本發明實施例 安知 能,以分1 + ^之方法提供必要的回應狀 心以允终並實現裝置間的非門丰β 可使至少冋^通訊。再者,回應狀態 二t 閒置狀態直到出現回應狀態。當然, 回應狀怨可藉由將傳送於處 理哭1 9 ° 12間的信號分離而在處 里π 1 2間進行通訊(透過次 尸哚始Λ 、内連貝枓匯流排1β或是分離的 ^虎線),這樣的回應信號並沒有脫離本發明的範圍。缺 列瞭解的是’由於本發明實施例將許多的經濟因素 .,^ ^ 應方法不需要使用任何額 資源來影響通訊。 ^疋超過上述範圍的任何 :子48可包括四個指令52,且整個指令字48 =、里可同時進行通訊,因而提供在—個操作 中傳达小程式的理相德合 y 、 心、。例如,大部分的” F0R/NEXT” 迴圈可在單一指令字48中每相咕 一立回 中貝現。弟5圖是微迴圈100的 不思圖。被迴圈1 Q Q和盆他值 102以及_指令叫\ 圈相同’具有剛指令 勺虹㈣ 於指令字48 (第4圖)最多可 包括四個指令52,單一妒入A /。丄 1 ilfi r ^ 4b /v 曰7予48中可包括三個操作指令 106。刼作指令106可以| /工y _ 了以疋任何可取得的指令,且程式設 計師可能會想要將其包含 、倣坦圈100中。在一般微迴圈 1 0 0的例子中,從一處理器】、, ϋ 12傳迗至另一處理器的微迴圈 1 0 0可以是從第二處理写彳 為12之RAM 24所讀出或是寫入第3019-8670-PF 19 200809529 Communication is controlled by the clock, and wa ^ ^ is not able to directly know whether the receiving device has correctly received the singularity or the error is checked by the sum operation. The correct receipt of the data, but not I, -y4 .. u. 曰, knowing that the completed message directly refers to the non-transportation device. Embodiments of the present invention are capable of providing the necessary response centroids in a manner of 1 + ^ to end and achieve non-gate abbreviations between devices to enable at least communication. Furthermore, the response state 2t is idle until a response state occurs. Of course, the response can be communicated between π 1 2 by separating the signals transmitted during the processing of crying 1 9 ° 12 (through the corpse Λ 内 , 内 枓 枓 枓 或是 或是 或是 or separate ^虎线), such a response signal does not depart from the scope of the present invention. What is missing is that 'because the embodiments of the present invention have many economic factors, the method should not use any amount of resources to influence communication. ^疋 Any of the above ranges: Sub-48 can include four instructions 52, and the entire instruction word 48 =, can communicate at the same time, thus providing the rationality of the small program in one operation, y, heart, . For example, most of the "F0R/NEXT" loops can be found in a single instruction word 48 for each phase. Brother 5 is a micro-loop 100. It is circled 1 Q Q and pot value 102 and _ command is called \ circle same 'has just command spoon rainbow (four) to command word 48 (Fig. 4) can include up to four instructions 52, single intrusion A /.丄 1 ilfi r ^ 4b / v 曰 7 to 48 may include three operational instructions 106. The command 106 can be used to execute any command that can be obtained, and the programmer may want to include it in the analog 100 circle. In the example of the general micro-loop 100, the micro-loop 1 0 0 transmitted from one processor, ϋ 12 to another processor may be read from the RAM 24 of the second processing write 12 Out or write

3019-8670-PF 20 200809529 二處理器12之RAM 24的一組指令,使得第一處理器i2 可”借用’’ RAM 24中的可用空間。 FOR指令1G2將代表期望疊代(iteratiQn)次數之值 放I回堆$ 28。也就是’位於資料堆疊34頂部之了暫 存器44中的值會被放入返回堆疊Μ"暫存器29。實際 上’通常設置於指令字48之插槽三54d #⑽指令ι〇2 y以設置於任何插槽54。若·指令1〇2沒有設置於插槽 一 54d ’則该指令字48中剩餘的指令52將會在進入微迴 圈1〇〇之前被執行,微迴圈1〇〇通常是下一個被載入的指 令字48。 根據本發明實施例,當隨指令104(第5圖)設置於 插槽三54d(第4圖)時為ΝΕχτ指令1〇4的特定形式。根據 本發明實施例’假設在一般順τ指令(未圖示)之後的特 定指令字48中所有的資料皆為位址(f〇r/next迴圈的起 始位址 > 不論NEXT指令1〇4位於四個插槽54之任一者, 其運算元皆相同(其中的例外為:若位於插 兩個數字會被覆寫)。然而,由於當位於插槽三州時的 NEXT 指令 104 德 -- ϊι 不_有位址-貝料,因此亦可假設位於插 槽三54d中的NEXT指令為隨〇_ΝΕχτ指令购。 MICRO-NEXT指令i〇4a係使用設置於相同指令字48之插槽 零54a中的第一指令52之位址。MICRO-NEXT指令104a 亦採用來自R暫存器29之值(原來藉由for指令m而放 入之值)’將其減卜並接著返回R暫存器29。當R暫存 器29之值達到預定值(例如零)時,MICRO-NEXT指令104a3019-8670-PF 20 200809529 A set of instructions for the RAM 24 of the second processor 12 such that the first processor i2 can "borrow" the available space in the RAM 24. The FOR instruction 1G2 will represent the number of iterations (iteratiQn). The value puts I back to the heap $28. That is, the value in the scratchpad 44 at the top of the data stack 34 is placed in the return stack quot"storage 29. In fact, it is usually set in the slot of instruction word 48. The three 54d #(10) instructions ι〇2 y are set in any slot 54. If the command 1〇2 is not set in slot one 54d' then the remaining command 52 in the command word 48 will enter the micro loop 1〇 Before being executed, the micro loop 1〇〇 is usually the next loaded command word 48. According to an embodiment of the invention, when the command 104 (figure 5) is set to the slot three 54d (Fig. 4) It is a specific form of ΝΕχτ instruction 1〇4. According to an embodiment of the present invention, it is assumed that all data in a specific instruction word 48 after a general τ instruction (not shown) is an address (f〇r/next lap Start Address > Regardless of whether the NEXT instruction 1〇4 is located in any of the four slots 54, the operands are the same (its The exception is: if two digits are inserted, it will be overwritten. However, since the NEXT instruction 104 de- ϊ ι ι _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ The NEXT instruction in 54d is purchased with the 〇_ΝΕχτ instruction. The MICRO-NEXT instruction i〇4a uses the address of the first instruction 52 set in the slot zero 54a of the same instruction word 48. The MICRO-NEXT instruction 104a is also used. The value from the R register 29 (the value originally placed by the for instruction m) is reduced and then returned to the R register 29. When the value of the R register 29 reaches a predetermined value (e.g., zero) At the time, the MICRO-NEXT instruction 104a

3019-8670-PF 21 200809529 曰將NEXT指令字48载入並且繼續操作。秋而,合 MICRO-NEXT指令l〇4a從R暫存勞9Q由、、、 田 + 瞀存益29中所讀取之值大於預 =勃則會從其指令字48之插槽零54a處重新執行操作 ,且執行設置於插槽零至插槽三中的三個指♦ 52。也就 2 ’根據本發明實施例中㈣⑽—刪指令總是會 執行三個操作指令⑽。由於在—些 望咖儒指令⑽使用所有三個可取得之指令= —令可根據需求來填滿插槽54之一者或兩者。 :?意的是,微迴旧。。可以完全地使用於單一處 =2中。:組可取得機器語言指令可作為操作指令ι〇6 1锨迴圈的應用僅受到程式設計師的想像力之限 二而,當在單一指令字48中執行整個微迴圈100的 :透二:處理器12傳送該指令字48至鄰近處理器12, =二料匯流排16在鄰近處理器12中執行指令_ =結合時將會提供強大的工具讓處理器 理器的資源。 用州U处 ^含於單—指令字48之小微迴圈_可以於處理器 38直訊’亦^從接收處理器12之通訊連接槔 尸入)/丁才曰令(如同包含於指令字48中的任何其他組 曰:)。料種微迴圈1GG有多種使用方法, 於當處理器12相I脸次上丨^各 敢曰使用 2-要將-貝料儲存於相鄰處理器12的記憶體 字:至Γ傳送指令至相鄰處理器,告知其將接收資 定記憶體位址,接著增加記憶體位址,並且 重稷既^代(取決於即將要傳送之3019-8670-PF 21 200809529 载入Load the NEXT instruction word 48 and continue operation. In the autumn, the value of the MICRO-NEXT command l〇4a from the R temporary storage 9Q, ,, Tian + 瞀存益29 is greater than the pre-= 勃 will be from its command word 48 slot zero 54a Re-execute the operation and execute the three fingers ♦ 52 set in slot zero to slot three. That is, in the embodiment of the present invention, the (4) (10)-deletion instruction always executes three operation instructions (10). Since all three achievable instructions are used in the "Machine" command (10) = - one or both of the slots 54 can be filled as needed. :? The intention is that the micro back to the old. . Can be used completely in a single place = 2. : The group can obtain the machine language instruction as the operation instruction ι〇6 The application of the loop is limited only by the programmer's imagination. When the entire micro-loop 100 is executed in the single instruction word 48: The processor 12 transmits the instruction word 48 to the neighboring processor 12, and the binary bus 16 will provide a powerful tool for the processor's resources when executing the instruction _= in conjunction with the processor 12. Use the state U to be included in the single-instruction word 48 of the small micro-circle _ can be directly in the processor 38 'also ^ from the receiving processor 12 communication connection 槔 入) / Ding Cong order (as contained in the instruction Any other group in word 48:). There are a variety of ways to use the micro-loop 1GG, when the processor 12 is on the face of the face, and then use the 2-to-be-storage to store the memory word of the adjacent processor 12: to the transfer instruction To the adjacent processor, telling it that it will receive the resource address, then increase the memory address, and repeat the generation (depending on the upcoming transmission)

3019-8 67 0-PF 22 200809529 讀取資料,第一處理器合 二… θ猎由使用類似的微迴圈來告知第 一处里态(此處用來儲存資料的處 寫回第-處理器。 將所㈣的資料 當藉由使用微迴圈100架構直接執行時,當所 料儲:量超過每個個別處判12内建的小儲存空二,、 J理:可使用其他的相鄰處理器12來儲存過量:資 ^此貫㈣ux資料儲存的方式來說㈣可以使用相同 迴圈二以猎由:立使其他處理1 12執行某些操作的微 、圈1。。而使處理器12的相鄰處理器來分享其計算資 :、:儲存結果並且重複既定次數。值得注意的是,本:明 U迴圈100架構的使用方法有無限多種。 =本發明實施例所述之資料或指令可以此處所說 法進订通$ ’因而可以直接從資料匯流排16來執 行指令,也就是不需要將指令儲存至RAM 24並接著於執 订別再呼叫指令。根據本發明實施例,通訊連接蜂μ上 所:收的指令字48與從_ 24或_ 26中再呼叫的指 令字4 8會被視為相同的。 FETCH指令是其中一種可取得的機器語言指令,η 指令係使用Α暫存器、4Ga上的位址來㈣從哪裡搁取ΐ8 位几字。當然,程式將會提供A暫存器恤上的正嫁位址。 由於A暫存器4Ga $ 18位元暫存器,因此具有足夠範圍 之可取得位址資料,可發生擷取指令的任何潛在來源之間 可:有所區別。也就是’一範圍的位址係指定給·,不 同乾圍的位址係指定至RAM,且每個連接# 38以及外部輪 23 3019~867〇-pp 200809529 入/輸出連接埠39皆具有特定位址。mcH指令永遠會掏 取在了暫存器44中所設置的18位元。此處重要的優點在 ;圈_不具有才曰令擷取。因此可使效能增加綱,並因 而降低功率消耗。 相比之下,可執行指令係暫存於指令暫存器,中。 ;將18位兀才曰令自48操取至指令暫存器咖中的操作 ::有特定指令。而當指令暫存器3〇a中不具有可執行指 處理器將會自動擷取下一個指令字48。下一個指令 Γ的位置係由程式計數11,,(p暫存器則來衫。在此 貝::中當從RAM 24或_ 26操取指令字48之序列時, = :4〇c通常會自動的增加。然而,這樣一般的規則3019-8 67 0-PF 22 200809529 Read the data, the first processor is combined... The θ hunting uses a similar micro-loop to inform the first state (here used to store the data back to the first-processing) When the data of (4) is directly executed by using the micro-return 100 architecture, when the storage: the quantity exceeds the small storage space built by each individual 12, the J: the other phase can be used. The neighboring processor 12 stores the excess amount: in the manner of (four) ux data storage, (4) the same loop 2 can be used to hunt: the other processing 1 12 performs some operations of the micro and circle 1. The neighboring processors of the device 12 share their computing resources:: store the result and repeat the predetermined number of times. It is worth noting that there are infinitely many ways to use the Ming U loop 100 architecture. The data or instructions can be ordered by the method described herein. Thus, the instructions can be executed directly from the data bus 16, that is, the instructions need not be stored in the RAM 24 and then executed in the call. In accordance with an embodiment of the present invention, Communication connection bee μ on: The word 48 and the instruction word 48 called from _ 24 or _ 26 will be treated as the same. The FETCH instruction is one of the available machine language instructions, and the η instruction is used in the scratchpad, the address on 4Ga. (4) Where to take the ΐ 8 digits. Of course, the program will provide the address of the A-scratch on the temporary storage. Since the A register is 4Ga $18-bit scratchpad, it has sufficient range to obtain. The address data can be generated between any potential sources of the capture instruction: there is a difference. That is, 'a range of addresses is assigned to ·, different addresses are assigned to RAM, and each connection# 38 and the external wheel 23 3019~867〇-pp 200809529 The input/output port 39 has a specific address. The mcH command will always capture the 18 bits set in the register 44. The important advantages here are The circle _ does not have the ability to capture. Therefore, the performance can be increased, and thus the power consumption is reduced. In contrast, the executable instruction is temporarily stored in the instruction register, and the 18-bit 兀The operation from 48 to the instruction register: there is a specific instruction. When the instruction is temporarily stored The processor 3〇a does not have an executable finger processor and will automatically retrieve the next instruction word 48. The position of the next instruction is counted by the program, 11, (the p register is the shirt. Here:: When fetching the sequence of instruction words 48 from RAM 24 or _ 26, = :4〇c usually increases automatically. However, such general rules

也/、有一些例外。例如,ΤΠΜΡ + PA τ T JUMP或CALL指令會於jUMP或 ⑽指令之後將目前載人指令字仏之剩餘部分中的資料 =曰疋的位址載入P暫存器恢’而不是增加計數器。當 恢載入對應於連接埠38之至少-者的位址時, 下-個指令字48將會從連接埠38載入指令暫存号 當從連接埠38將指令字48擷取 予擷取至指令暫存器30a時,p 4Gg亦不會增加。當然,m 40c將會維持相 同的連接痒位址,直到執行特定_或㈣指令來改 P暫存器40。。也就是,一旦處理器12被告 二 :找下-個指令,電腦12將會持續尋找來自相同連妾阜 38之指令直到被告知去尋找 接車 (RAM 24或R0M 26)來執行下一個指令字48 體 如上所述,當目前指令字48中不具有任何可執行指 3019-8670-PF 24 200809529 令時,處理器12所擷取的下一個18位元指令要放置在指 令暫存器30a。基本上,由於在JUMp或CALL指令之後剩 下的1 8位元指令字係用來表示jump或CALL指令所提到 的位址,因此在JUMP或CALL指令(或是在某些其他此處 沒討論到的指令)之後的目前指令字48中不會具有可執行 指令。換句話說,上述步驟在許多方面皆相同,也就是几肝 或CALL指令可選擇性的至連接埠38而不只是至記憶體位 址等等,然其並非用以限定本發明的範圍。 值得注意的是,處理器12可從連接埠38之一者或是 從任何連接埠群組38尋找下一個指令。因此,所提供的 位址係用來對應至許多連接4 38賴合。根據本發明實 施例,當處理器被告知從一連接埠群組38擷取指令時, 則處理器12會接受來自任何選取連接埠⑽之第一可取得 指令字48。若沒有任何相鄰處理器12企圖寫入這些連接 璋38。之任一者,則處理器12將會進入閒置狀態直到相鄰 處理器寫入所選取之連接埠。 第6圖顯示上述直接執行方法12〇的流程圖。當指令 暫存器30a中不具有可執行指令時開始’,標準,,操作流 程。此時,在流程圖中標示為”擷取指令,,的操作122中1 f腦12將會擷取另-指令字(值得注意的是,,’指頁取,,— 闲在此處為一般的觀念,並沒有實際使用肫了⑶指令)。 此操作係根據暫存器40c中的位址而完成(在“圖之流 程圖中標示為位址判斷操作126)。若p暫存器4〇c中的位 址為RAM 24或膽26位址,則在,,從記憶體擷取” 126 3019-8670-PF 25 200809529 中:會從指定記憶體位置擷取下-個指令字48。換Also /, there are some exceptions. For example, instead of incrementing the counter, the ΤΠΜΡ + PA τ T JUMP or CALL instruction will load the data in the remainder of the current manned instruction word = the address of the current register into the P register after the jUMP or (10) instruction. When the address corresponding to at least one of the ports 38 is restored, the next instruction word 48 will load the instruction temporary number from the port 38 when the instruction word 48 is retrieved from the port 38. When it comes to the instruction register 30a, p 4Gg does not increase. Of course, m 40c will maintain the same connection itch address until a specific _ or (4) instruction is executed to change P register 40. . That is, once the processor 12 is slammed: find the next command, the computer 12 will continue to look for instructions from the same link 38 until it is told to find the pick-up (RAM 24 or ROM 26) to execute the next command word. As described above, when the current instruction word 48 does not have any executable fingers 3019-8670-PF 24 200809529, the next 18-bit instruction fetched by the processor 12 is placed in the instruction register 30a. Basically, since the remaining 18-bit instruction words after the JUMP or CALL instruction are used to represent the address mentioned in the jump or CALL instruction, the JUMP or CALL instruction (or some other here) There is no executable instruction in the current instruction word 48 after the instruction in question). In other words, the above steps are identical in many respects, i.e., several liver or CALL instructions are selectable to the port 38 rather than just to the memory address, etc., and are not intended to limit the scope of the invention. It is worth noting that processor 12 can look for the next instruction from one of ports 38 or from any port group 38. Therefore, the address provided is used to correspond to many connections. In accordance with an embodiment of the invention, when the processor is informed to fetch instructions from a port group 38, the processor 12 accepts the first fetchable command word 48 from any of the selected ports (10). If no adjacent processor 12 attempts to write to these connections 璋38. Either processor 12 will enter an idle state until the adjacent processor writes the selected port. Fig. 6 is a flow chart showing the above direct execution method 12A. The ', standard, operation flow is started when there is no executable instruction in the instruction register 30a. At this point, in the flow chart labeled "Capture Instruction," in operation 122, 1 f brain 12 will retrieve another - instruction word (notable,, 'finger page fetch,, - idle here The general idea is that the (3) instruction is not actually used. This operation is done based on the address in the scratchpad 40c (labeled as address determination operation 126 in the flowchart of the figure). If the address in the p register 4〇c is the RAM 24 or the biliary 26 address, then, from the memory, 126 3019-8670-PF 25 200809529: will be taken from the specified memory location - an instruction word 48.

Hi),,: I器^中的位址為連接埠叫不是記憶 鱼 貝丨在攸連接埠擷取,,126的操作中將合從於— 連接痒位置掘取下一個指令字48。在上述;= 二:令字48係於”操取指令&quot;。的操作中放置: 二暫存器咖中。在,,執行指令字” 132的操作中,指 7子48之插槽54中的指令係依序完成。 m _ 134的操作中係根據指 ::一 Π㈣為聊指令或是具有上述其他可二 …作的指令而進行判斷。若指令字48中的1中 “佩令,則在”載入P暫存器” 136的摔作中传 於詹指令(或其他指令)之後將指令字48提位 :提供給p暫存…並且再次回到-開始的:: 子122的操作(如第6圖所示)。若指令字48中不: 聊指令或是其他可以使操作離開—般操作的指令 X連接埠位址”判斷138操作中的下一個動作係根據上 扎令從連接埠38或記憶體位址所擷取來決定。若上一 個指令係從連接埠38所操取’則暫存器⑽不會改變且 再次回到-開始的”擷取字” 122之操作。換句話說,若 ^ 一指令是從記憶體位址RAM24或議26)所擷取,則在 完成”操取字” 1 2 2夕 &gt; 从乂 ^ π,, Z之‘作刖,第6圖,,增加p暫存 态U0的操作會增加P暫存器30a中的位址。 上述說明並非描述實際操作步驟,而只是根據本發明 3019-8670-PF 26 200809529 實施例所述之不同判斷與操作結果的圖示。此流程圖不應 該被解讀為每個操作需要分開的連續步驟來完成。事實 上,許多第6圖之流程圖中的操作在實際上是同時完成的。 第7圖顯示根據本發明實施例㈣之用⑽改處理器 之方法&amp; $圖°如上所述’ f等待輸人時處理器U將會 進入閒置狀態。如本發明第!圖至第4圖的實施例中的輸 入可以來自相鄰處理器12。否則,相鄰於晶片14邊緣之 具有通訊連接埠38的處理器 心命i Ζ 1具有设置於處理器12 内部或是相鄰於處理器12外部(如此通訊連接蟑38便可 做為外部輸入/輪出連接埠39)的額外電路。不論在哪—種 情況下’本發明額外提供的優點為:閒置處理_ 12可準 備好被啟動,並且當接㈣輸人時快速㈣行某歧指定動 作。此處理又叫做工作者模式(w〇rker m〇de)。 #每個處理器12開始執行指令時皆被編程為跳躍】 一位址,該位址將會是使特定處理器12開始其指定工^ 之第一指令字48的位址。指令字可設置於中。名 冷啟動㈣dsta⑴後,處理器12可載人程式,例如工 作者模式迴圈程式。對於中間處理器12、 以及角落處❹心H相式迴圈皆不同。再者, :些,理8 12在陣列1G内相關位置之顧中啟動時可且 有特定工作。以τ將會詳細說明卫作者模式迴圈。’、 由於這樣的特徵可應用於許客 亍雷,, 午夕地方,因此第7圖係顯 不電月“戒方法15〇的流程圖。如第7圖所示, 但入警戒狀態”则操作中’處理器12將會進入閒:狀 3019-8670-PF 27 200809529 態,以等待來自相鄰處理器12(或是至少一相鄰處理器 12,最多可以為四)的輸入,在,,邊緣,,處理器12的例 子中可以是外部輸入或是其他外部輪入以及/或來自相鄰 處理w 12之輸入的組合。如上所述,處理器1 2可以進入 閒f狀態來等待完成讀取或寫入操作。在此實施例中,處 Γ 2係用來等待某些可能的輸入,接下來假設等待處 理器將其讀取線1 8 &gt; 。又疋為南電位,以等待來自相鄰或外 部來源的寫入接作,a Α π u Μ /、乍目刚所期望的的確都是一般的狀況。 然而,等待處理器1 2合將1宜 ^ ^ ^ 曰將,、寫入線20設定為高電位,使 付s相鄰或外部來源讀取等 器12喚醒H並㈣切處理&quot;12時可將等待處理 ......並非用以限定本發明的範圍。 在啟動操作154中, 置39已完成等待…, 處理器12或是外部裝 12伟繼痒隹 '、又易(transacti〇n),因此閒置處理号 12係繼績進行操作。若 处主為 48 ^ ii] ^ w ^ 、、乂易為即將執行之指令字 4«則處理器12將會繼續執 &quot;予 易為貝枓,則處理器12將 旧又 其可以為目前指令字48中;=仃仔列中…指令, 被載入的下乂上 插礼54内的指令或是即將 饭戰入的下一個指令字48, 疋Ρ將 字48之插槽&quot;。若在 “將會位於下—指令 指令將會開始於連續的至:二中使用此方法,則下-入。處理輪人的選擇 ” ’以處理所接收的輪 10中的其他至少一處理琴^丁某些内部預定功能,與陣列 (如在傳統技術中的指定狀進仃通訊’或是忽視該輪入 7圖中係描述,,對輸入起作用I:以忽視中斷操作)。在第 之操作。值得注意的 3〇19-867〇-pp 28 .200809529 是,在-些貫施例中輸入的内容可能不是那麼重要,而在 一些實施例中可能只對企圖進行通訊之外部裝置感興趣。 A悉此技藝之人士皆瞭解若可以更有效且方便的使 用令斷則對上述操作模式將會有所助益。當處理器12將 其至少一讀取線18(或是寫入線2〇)設定為高電位時即可 以被稱為位於,,警戒,,狀態。在警戒狀態中,處理器12 已經準備好馬上執行傳送至對應於設定為高電位之讀取 線18之資料匯流排上的任何指令或是對傳送於資料匯流 排16上的資料作反應。當取得處理器陣列㈣,則可於 任何時間將任何-者設置於上述警戒狀態,如此任何規定 輸入組合將會被驅動為動作狀態。由於中斷將會使處理哭 儲存某些資料、載入某些資料等等來回應中斷要求,因: 較佳為使用傳統中斷技術來取得處理器的注意。根據本笋 明實施例,當處理器被設置於警戒狀態並且用來等待感興 趣的輸入時,在開始執行輸入所觸發的指令時不僅僅浪費 單-指令週期。值得注意的是,位於警戒狀態的處理器實 際上將S疋閒置狀態,在閒置狀態中不會使用電力, 而當即時被輸入觸發為動作時會進入警戒狀態。然而,即 使處理器不在閒置狀態,電腦可包含警示狀態,然其並未 脫離本發明的範圍。所述之警戒狀態可用於任何情1兄,除 此之外亦可使用傳統中斷(軟體中斷或是硬體中斷)技術。 弟® ” &quot;員示根據本發明另一貫施例所述之處理器馨戒 方法150a,用以說明監視處理器12f(第1圖)以及被指定 其他工作的另一處理器12g(第i圖)之間期望或必須的互 3019-8 67〇~pp 29 200809529 動。如第8圖所示,在第8圖中具有兩個分別適用於處理 器12f與12g之獨立流程圖,也就是用來表示本發明所提 及之合作共處理器(coprocessor)的本質,除了當兩者之 間的互動完成的時候之外,每個處理器12皆具有可獨立 完成之任務。另外,不論輸入來自外部輸入裝置或是陣列 1〇中的其他處…2,本發明亦提供使用中斷來處理輸 入。如上所述,本發明係允許處理器12處於,,閒置且鍫 戒”狀態來處理中斷來取代中止處理器12的操作。因:, 可使用至少一處理器12來接收輸入並且對輸入作回岸。 一=理器m,此處所完成之,,進入閒置且警戒狀 知作、,、動操作’,⑸以及,,對輸入起作 用⑸操作係與處理器警戒方法15〇《第一實施例相 關。然* ’由於此實施例預期處理器12f與12g之間可能 接收輸人是 處理器12f返回閒置且M J的“。右不需要,則 能S戒恶或是其他先前討論的狀 : 〶要’則處理器12在,,傳送至其他,,操作m 中初始與處理器1 2 戈一+去㈣ g之間的通讯。值得注意的是,根據程Hi),,: The address in the I device is the connection bark is not the memory fish Beggar in the 攸 connection, the operation of 126 will be taken from the connection - the itching position to dig the next instruction word 48. In the above; = 2: The word 48 is placed in the operation of the "Operation Command". In the operation of the second register, in the operation of the instruction word 132, the slot 54 of the 7 sub-48 is referred to. The instructions in the system are completed in order. The operation of m _ 134 is judged according to the instruction of :: a Π (4) as a chat command or an instruction having the above other versatility. If 1 in the instruction word 48 is "peer, then the instruction word 48 is raised after the "loading of the P register" 136 is passed to the Zhan instruction (or other instruction): provided to the p temporary storage... And again back to the beginning:: the operation of sub-122 (as shown in Figure 6). If the instruction word 48 does not: the chat command or other instructions that can make the operation leave the general operation X connection 埠 address" judgment The next action in the 138 operation is determined by the connection from the port 38 or the memory address. If the previous instruction was fetched from port 38, then the scratchpad (10) does not change and returns to the beginning of the "fetch word" 122 operation. In other words, if the instruction is retrieved from the memory address RAM24 or 26), then the "fetch word" is completed 1 2 2 &gt; from 乂^ π,, Z's 刖, 6th In the figure, the operation of adding the p temporary state U0 increases the address in the P register 30a. The above description is not intended to describe the actual operational steps, but is merely a representation of the different judgments and operational results described in the embodiment of the invention 3019-8670-PF 26 200809529. This flow diagram should not be interpreted as requiring each operation to be performed in separate sequential steps. In fact, many of the operations in the flowchart of Figure 6 are actually done simultaneously. Fig. 7 shows a method for changing the processor according to the embodiment (4) of the present invention (4) &amp; $Fig. As described above, the processor U will enter the idle state when waiting for the input. As the invention is! The inputs in the embodiment of Figures 4 through may be from adjacent processors 12. Otherwise, the processor core 具有 1 having the communication port 38 adjacent to the edge of the chip 14 is disposed inside the processor 12 or adjacent to the processor 12 (so the communication port 38 can be used as an external input). / Turn out the extra circuit of connection 埠 39). In any case, the present invention additionally provides the advantage that the idle processing _ 12 is ready to be activated, and that the (four) line specifies a certain action when the (four) input is made. This process is also called worker mode (w〇rker m〇de). # Each processor 12 is programmed to jump when it begins executing instructions. An address, which will be the address of the first instruction word 48 that causes the particular processor 12 to begin its designated job. The instruction word can be set in the middle. Name Cold boot (4) After dsta (1), the processor 12 can carry a program, such as a worker mode loop program. The intermediate processor 12 and the H-phase loops at the corners are different. Moreover, some of them can have a specific work when they are activated in the relevant positions in the array 1G. Taking τ will detail the guardian mode loop. ', because such a feature can be applied to the Xu Ke Lei,, at the midnight eve, so the 7th figure shows the flow chart of the "failure method 15 。. As shown in Figure 7, but in the alert state" In operation, processor 12 will enter idle: state 3019-8670-PF 27 200809529 state, to wait for input from neighboring processor 12 (or at least one adjacent processor 12, up to four), at, The edge, processor 12 example may be an external input or a combination of other external rounds and/or inputs from adjacent processing w12. As described above, the processor 12 can enter the idle f state to wait for a read or write operation to be completed. In this embodiment, the Γ 2 is used to wait for some possible input, and it is assumed that the waiting processor will read the line 1 8 &gt; It is also a south potential, waiting for a write connection from an adjacent or external source, a Α π u Μ /, which is exactly what is expected. However, waiting for the processor 1 2 to be 1 ^ ^ ^ ^ 曰, the write line 20 is set to a high potential, so that the s adjacent or external source read device 12 wakes up H and (four) cut processing &quot; 12 o'clock Waiting for processing... is not intended to limit the scope of the invention. In the start operation 154, the device 39 has completed the waiting..., the processor 12 is either externally mounted, and is also transacti, so the idle processing number 12 is followed by the operation. If the owner is 48 ^ ii] ^ w ^ , and the code is the command word 4« to be executed, the processor 12 will continue to execute &quot;Yiyi is Bessie, then the processor 12 will be old and it can be current In the command word 48; = in the 列 列 column... command, the command in the loaded 乂 插 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54 54. If "will be located below - the command will start in continuous: two, use this method, then - enter. Process the wheel's choice" to handle the other at least one of the received wheels 10 Some of the internal predetermined functions, in conjunction with the array (such as the communication in the designation of the conventional technology) or the neglect of the description of the wheeled 7 diagram, act on the input I: to ignore the interrupt operation). In the first operation. It is worth noting that 3〇19-867〇-pp 28 .200809529 is that the input in some of the examples may not be so important, and in some embodiments may only be of interest to external devices attempting to communicate. A person who knows this skill knows that it will be helpful to use the above operation mode if it can be used more effectively and conveniently. When the processor 12 sets its at least one read line 18 (or write line 2A) to a high level, it can be referred to as a location, an alert, a state. In the armed state, the processor 12 is ready to immediately execute any command transmitted to the data bus corresponding to the read line 18 set to high potential or to react to the data transmitted on the data bus 16 . When the processor array (4) is obtained, any one of them can be set to the above-mentioned alert state at any time, so that any specified input combination will be driven to the action state. Since the interrupt will cause the processing to cry, store some data, load some data, etc. to respond to the interrupt request, because: It is better to use the traditional interrupt technology to get the attention of the processor. According to the present embodiment, when the processor is set to the alert state and is used to wait for input of interest, not only the single-instruction cycle is wasted at the start of execution of the instruction triggered by the input. It is worth noting that the processor in the alert state will actually be in an idle state, will not use power in the idle state, and will enter the alert state when the instant input is triggered as an action. However, even if the processor is not in an idle state, the computer may include an alert state without departing from the scope of the present invention. The alert state can be used for any sibling, in addition to traditional interrupt (software interrupt or hardware interrupt) techniques. </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> Figure 3) Expected or necessary mutual 3019-8 67〇~pp 29 200809529. As shown in Figure 8, there are two separate flowcharts for processors 12f and 12g, respectively, in Figure 8, ie Used to indicate the nature of the coprocessor referred to in the present invention, except that when the interaction between the two is completed, each processor 12 has an independently achievable task. From an external input device or other location in the array... 2, the present invention also provides for the use of interrupts to process the input. As described above, the present invention allows the processor 12 to be in an idle, idle state to handle interrupts. The operation of the abort processor 12 is replaced. Because: at least one processor 12 can be used to receive input and return the input to the shore. A = processor m, completed here, enters idle and alert-like,,, and action ', (5) and, acts on the input (5) operating system and processor alert method 15 〇 "first embodiment related . However, 'due to this embodiment it is expected that the possible input between the processors 12f and 12g is that the processor 12f returns idle and MJ's. "The right does not need to be able to quit evil or other previously discussed modalities: Then the processor 12 is transferred to the other, and the communication between the processor and the processor 1 2 Go to + (4) g is in operation m. It is worth noting that

Si來自二理器⑵可傳送指令,例如處理器12f ==裝置82的輸入而於其内部產生的指令,或 自外部裝…指令。另外,處理器⑵可傳 是二外;Γ12g,該資料可於處理器m内部產生或 疋木自外部裝置82。另外,者+ 田處理器1 2 f接收來自外部裝 3019-8 670-pp 30 .200809529 置82的輸入時可能合 士 有所有的這些機會/ 處理器取。程式設計者具 在執行主要功能,,f η 由執行铲知作162中,處理器12g通常藉 者認為處理器12與12二要二作。然*,若程式設計 尋找輸入,,操作166中 存在偶爾的互動,則在” t Ji ^ #,|if ^ 耘式设计者偶爾會將處理器I2g ㈣Μ有相鄰處理器企圖進行通訊。”輸入?” Π作168係用來判斷是否有通訊等待的狀二 :=12f已初始對處理…行寫入操作)。若已 、、工有初始的通訊(Η ), | w 1 〇 、在攸其他接收,,操作1 70中處 =將會完成通訊。如第8圖所示,若不具有初始的 =(否),則處理器12g將會返回執行其㈣功能⑽。 fV足其他接收’,操作170之後’處理器12㈣會對在” 輸入起作用”操作172中所接收的輸入起作用。如上所 述’程式設計者可使處理器12g將指令作為輪入,在這樣 的例子中,處理器i 2g將會執行此處所提到的指令。另外, 處理器12g將會被編程為對資料作反應。 如第8圖所示,在,,對輸入起作用”操作172之後, 處理器12g係返回以完成其主要功能(也就是返回至”執 打主要功能”操作!62)。當然也存在更複雜的例子。例 如,來自處理器12f的某些輸入將會使其中止其先前指定 的主要功能並且開始新的功能或是只是暫時中止以等待 進一步的輸入。熟悉此技藝之人士皆瞭解許多反應的可能 性僅受到程式設計者想像的限制。 3019-8670-PF 31 200809529 值付注思的是,由於另 卢τ田w 1。 _ 田於另處理益12被指定可能會需 要中fe/f之备視並且處理輪 輸入的工作,因此當本發明實施例 所,之既定處理器12執行工作時不需要被中斷。然而, 值得注意的是,忙於處理1 # 处里其他工作的處理器12亦無法被 打擾,直到其編程提供# Μ 捉仏寸找適用於輸入的連接埠3δ。因 此,有時候期望中止處理器12來尋找其他輸入。以下將 會說明_止”的概念以及其使用方法。 、2處理器之間的每個連料⑽包括複數資料線 22、^線18以及一寫入線2〇 ’其中包含資料匯流排 1 6。除了貧料匯流排丨6外,^ ^ ^ ^ ^ ^ 連接埠38亦包括交握 2=1信號。資料線22係設置於兩台相鄰電腦 -咬運」:之間。例如,請RE(寫入)指令期間, 子或,异凡可存在於處理器12e的τ暫存器44中,接著 處理12 e之窵入綠9 π 7 I”«χ ” 、 口被设定為高電位。當處理3| 12c之讀取線is祐讯宁&amp;古平/ 士 ^ °又疋為同電位時,在FETCH(讀取)指令 =送至處理器,之T暫存器44。在完成傳輸 後’:取線與寫入線20皆會被設定為低電位。在此實 當!存器40。讀取資料時,資料會變成指令。 或_二”讀取訊息時’該訊息可以為資料、指令 在二…。指令可儲存至記憶體中,使得相同處理器12 令’或^存至連接痒38並且讓不同 =:2直接從連接璋38執行該指令。若處理器12 。憶體中的P暫存器術讀取指令,處 將指令放入指令智在, 為以曰猎由 7暫存裔30a中而立即執行該指令,或是將 3019-8 67〇~pf 32 .200809529 訊息視為資料並將其放 指向連接埠38,目丨丨π 1存益44中。右FETCH指令 咬丧旱38 ’則FETCH指令The Si slave (2) can transmit instructions, such as instructions generated by the processor 12f == the input of the device 82, or internally. In addition, the processor (2) can transmit two or more; Γ 12g, the data can be generated or hacked from the external device 82 inside the processor m. In addition, the + field processor 1 2 f receives the input from the external 3019-8 670-pp 30 .200809529 82. It is possible that all of these opportunities/processors are taken. The programmer is performing the main function, f η is executed by the shovel 162, and the processor 12g usually assumes that the processors 12 and 12 are both. However, if the program is looking for input, there is an occasional interaction in operation 166, then the "t Ji ^ #,|if ^ 设计 designer will occasionally have the processor I2g (4) have an adjacent processor attempting to communicate." Input? Π 168 168 is used to determine whether there is communication waiting for the second: = 12f has been initially processed for processing ... line write operation. If the work has been initial communication (Η), | w 1 〇, 攸 other Receive, operation 1 70 = communication will be completed. As shown in Figure 8, if there is no initial = (No), the processor 12g will return to perform its (4) function (10). fV enough other reception ', After operation 170, processor 12(4) will act on the input received in the "Input Active" operation 172. As described above, the programmer can cause processor 12g to use the instruction as a round, in such an example, processing The device i 2g will execute the instructions mentioned here. In addition, the processor 12g will be programmed to react to the data. As shown in Figure 8, after the operation of the input operation 172, the processor 12g returns to complete its main function (ie return to the "play main function" operation! 62). Of course there are more complicated examples. For example, some input from processor 12f will either abort its previously designated primary function and start a new function or simply abort to wait for further input. Those familiar with this art know that the possibilities of many reactions are limited only by the programmer's imagination. 3019-8670-PF 31 200809529 The value of thinking is due to the other Lu Tada w 1 . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ However, it is worth noting that the processor 12, which is busy processing other tasks in the 1#, cannot be disturbed until its programming provides a 埠3δ for the input. Therefore, it is sometimes desirable to suspend processor 12 for other inputs. The concept of "stop" and its use method will be explained below. Each of the binders (10) between the two processors includes a plurality of data lines 22, a line 18, and a write line 2', which contain data bus 16 In addition to the poor material bus 丨6, ^ ^ ^ ^ ^ ^ 埠 38 also includes the handshake 2 = 1 signal. The data line 22 is set between two adjacent computers - bite: between. For example, during the RE (write) instruction, the sub or the exception may exist in the τ register 44 of the processor 12e, and then the processing of the 12 e into the green 9 π 7 I" «χ", the port is set Set to high potential. When the read line of the 3|12c is processed, the signal is sent to the processor, and the T register 44 is sent to the processor. After the transfer is completed, both the line and the write line 20 are set to a low level. Really here! The memory 40. When reading data, the data becomes an instruction. Or _2" when reading a message, the message can be data, the command is in the second... The command can be stored in the memory, so that the same processor 12 causes 'or ^ to save the connection itch 38 and let the difference =: 2 directly from The port 38 executes the instruction. If the P register in the processor 12 reads the instruction, the instruction is placed in the instruction, and the instruction is executed immediately by the 7 temporary holder 30a. Or treat the 3019-8 67〇~pf 32 .200809529 message as a data and point it to the link 埠38, see π 1 in the benefit 44. The right FETCH command bites the drought 38 'the FETCH command

或WL指令指向、^6 為資料。若JUMP 曰向連接埠38,或是return指令於θ、鱼 38位址,則P勒六的 相7才曰向連接埠 、暫存益4〇c會將寫入連接埠38的指令 貢料並將指令當作可執行碼。 “視為 息視t = ; 12可將訊息視棚讀取,並接著將訊 直^ ',‘、人。循路(routed)訊息係被解譯為資料並 將其頃入母個連續處理器12之T暫存器44, 預期的接收器’接下來會把訊息解譯為程式碼(從P暫存 取)並且執行之。因此,若在瞻HA(定義:: ^己憶體之A暫存器術的内容)或是職⑽(定義為讀 取=憶體之A暫存器4〇a的内容,並且將八暫存器術的 合加)或疋FETCH P+(定義為讀取記憶體之p暫存器 4〇c的内容,並且將p暫存器4〇c的内容加一)期間讀取訊 息’則訊息會傳送至處理器12之了暫存器44來執行讀取。 若處理器12從暫存器板讀取訊息,則訊息係傳送至接 收處理器12之指令暫存器30a。 弟1圖顯示5又置於單一晶片14上之内連處理器12之 陣列10,以24個處理器丨2為例子,其中每個處理器12 皆有數個接腳(pin)設置於晶片14的周圍。每個處理器12 一有四個連接埠38,分別標示為右、下、左以及上(rdlu)。 在第1圖中,處理器12e具有四個相鄰處理器12,其中處 理器12b設置其於右側,處理器i2d設置其於下側,處理 器12c設置於其左側,且處理器1 2a設置於其上側。即使 3019-8670-PF 33 200809529 =於只邊:二處理:12:'有三個相鄰處理器且角落處理 L有四個遠鄰處理為,這些邊緣及角落處理器12仍 具有四個連接埠38(亦標名為RDLU)。 第:圖係顯示另一陣列10a的方塊圖。在本發明實施 :二列广具有24個處理器12。同樣的,在本發明 : :理益、12的相對方位係設置為’’鏡像,,。也 二:「…列173的處理器12皆為陣列1〇a上部 广““74翻轉的結果’使得下連接 Π;:、第四以及第六請的處…皆糊 二 者其7軸178翻轉的結果’使得右連接埠38b 陣列心的左側。因此,處理器N6、N8、N1〇、N18、 _以及N22維持其原本rdlu方向,而處理器n〇、n2、 N4、N12、N14以及N16係為沿著叉軸174翻轉 理器.Ν9、Ν11、ν19、Ν21μΝ23_&quot;““78 翻轉㈣果’而處理器LN5、N13、N15以及N17 係為沿著其X軸174以及又軸178翻轉的結果。除了設置 於陣列1〇a之角落舆邊緣的處理器之外,旋轉的結果將造 成所有的右連接埠挪互相正對,所有的下連接痒_互 相正對’所有的左連接埠,互相正對,以及所有的上連 接埠38a互相正對。以下將會詳細討論,由於内連處理器 為相郇内連處理器12的鏡像,因此允許處理器12直接 與相鄰處理器12對齊與連接。 為了 α辦法表示陣列1 〇 a的方向並未改變,發明人選 擇使用北、南、東以及西(NSW這樣的專門術語。即使經 3019—8 β7〇~ρρ 34 200809529 過鏡像處理,北、南、東以及西的方向仍可保持其相對方 向,這樣的觀念在從處理器12透過中間處理器12將傳送 訊息至另一非相鄰處理器12之循路期間是非常重要的。 方向(NSEW)係位於ROM 26中的表格内。 由於左連接埠38c與上連接埠38a係設置於陣列1〇a 的外圍因此沒有與陣列i 0a内部内連,這兩個連接埠可能 會連接至外部輸入/輸出連接埠39(第丨圖)。當下連接埠 38d與右連接槔38b的列以及攔編號為偶數時則永遠連接 :其他處理器12。例如,處理器7有四個正交相鄰處理 器,也就是N6係連接至右連接埠38b , N1係連接至右連 接槔38d,N8係連接至左連接蟑38c,以及_係連接至 士連接埠38a。第93圖係為四個節點的詳細說明圖,也就 是將第9圖之N7、N8、N13以及NU標記出右連接谭 下連接璋38、左連接埠38以及上連接埠38&amp;。 出暫個處理器12具有^位元輸入/輸 出暫“ 47。母個輸入/輸出暫存器47包括相鄰處判是 否從其連接埠38執行讀取或是對連接埠38執行寫入摔作 ❹:第圖為處理器12之輸入/輸出暫存器卿 位元_Β16代表處理器12的讀取以及寫入 狀恶。輸入/輸出暫存器47包括其通訊 取以及寫入交握狀態位元5〇。 β δ上之5貝 藉由讀取這些位元,處理器12可:二唯獨位元5〇。 間置等待寫入其連接4 3δ之鄰處理器係 埠38之一者執行讀取操作㈣、'待從其連接 右相鄰處理器係等待寫入處Or the WL instruction points to ^6 as the data. If the JUMP is connected to 埠38, or the return command is at θ, fish 38 address, then the phase 7 of P6 is connected to the port, and the temporary storage is 4〇c. And treat the instruction as an executable code. "Considered as a view of t = 12; the message can be read from the shed, and then the message will be '', ', person. The routed message is interpreted as data and it is processed into the master. The T register 44 of the device 12, the intended receiver 'will interpret the message as a code (temporary access from P) and execute it. Therefore, if it is in the HA (definition:: The content of the A register is either (10) (defined as the contents of the read/restore A register 4〇a, and the addition of the eight registers) or 疋FETCH P+ (defined as read) The content of the p register 4 〇c of the memory is read, and the content of the p register 4 〇c is incremented by one), and the message is transmitted to the register 44 of the processor 12 to perform the reading. If the processor 12 reads a message from the scratchpad board, the message is transmitted to the instruction register 30a of the receiving processor 12. The first screen shows that the internal processor 12 is placed on the single chip 14. The array 10 is exemplified by 24 processors , 2, wherein each processor 12 has a plurality of pins disposed around the wafer 14. Each processor 12 has four ports 38. Not indicated as right, down, left, and up (rdlu). In Fig. 1, the processor 12e has four adjacent processors 12, wherein the processor 12b is disposed on the right side, and the processor i2d is disposed on the lower side. The processor 12c is disposed on the left side thereof, and the processor 12a is disposed on the upper side thereof. Even if 3019-8670-PF 33 200809529 = only side: two processing: 12: 'there are three adjacent processors and the corner processing L has four The proximity processing is such that the edge and corner processor 12 still has four ports 38 (also designated as RDLU). The first: a block diagram showing another array 10a. In the practice of the present invention: two columns have 24 Processor 12. Similarly, in the present invention: : The relative orientation of the benefits, 12 is set to ''mirror,'. Also two: "...the processor 12 of column 173 is the array 1〇a upper wide" The result of the 74 flipping 'make the lower joint Π;:, the fourth and sixth please... all paste the result of the 7-axis 178 flipping 'the right side of the right side of the array 38b array. Therefore, the processor N6, N8 , N1〇, N18, _, and N22 maintain their original rdlu direction, while processors n〇, n2, N4, N12, N14 And N16 is to invert the processor along the fork axis 174. Ν9, Ν11, ν19, Ν21μΝ23_&quot; ""78 flip (four) fruit' and the processors LN5, N13, N15 and N17 are along its X-axis 174 and the further axis 178 The result of the flip. Except for the processor placed at the edge of the corner of the array 1〇a, the result of the rotation will cause all right connections to be opposite each other, all the lower connections itch _ mutually opposite 'all left connections Oh, they are facing each other, and all the upper ports 38a are opposite each other. As will be discussed in more detail below, since the interconnect processor is a mirror image of the interconnect processor 12, the processor 12 is allowed to align and connect directly with the adjacent processor 12. In order to indicate that the direction of array 1 〇a has not changed, the inventors chose to use North, South, East, and West (NSW). Even after 3019-8 β7〇~ρρ 34 200809529, mirroring, north, south The east, west, and west directions can still maintain their relative orientations, and such an idea is very important during the routing from the processor 12 through the intermediate processor 12 to transmit messages to another non-adjacent processor 12. Direction (NSEW The system is located in the table in the ROM 26. Since the left port 38c and the upper port 38a are disposed on the periphery of the array 1a and thus are not internally connected to the array i0a, the two ports may be connected to the external input. /output port 埠 39 (figure map). When the column of the lower port 38d and the right port 38b and the block number are even, it is always connected: other processors 12. For example, the processor 7 has four orthogonal adjacent processes. The N6 is connected to the right port 38b, the N1 is connected to the right port 38d, the N8 is connected to the left port 38c, and the _ is connected to the port 38a. Figure 93 is a four node. Detailed illustration, also N7, N8, N13, and NU of Fig. 9 are marked with a right connection tan connection port 38, a left connection port 38, and an upper port 38&amp; The temporary processor 12 has a bit input/output temporary "47". The parent input/output register 47 includes an adjacent decision whether to perform a read from its port 38 or a write to the port 38: the figure is the input/output register of the processor 12. Bit_Β16 represents the read and write state of the processor 12. The input/output register 47 includes its communication fetch and write handshake state bits 5 〇. 5 β on β δ by reading these Bits, processor 12 can: two unique bits 5 〇. Interleave one of the adjacent processor systems 38 waiting to write its connection 4 3δ to perform a read operation (4), 'to be connected from its right adjacent processing Wait for the write

3019-8670-PF 35 200809529 理器12,則處理器12之輪 ^ ^ ^ 輸入/輸出暫存器47寫入線狀態 位兀將會進入咼電位七… 』 、專待傳送來自特定相鄰處理器 的寫入§fL息。同樣的,# 4 # 様的右相鄰電腦等待讀取處理器12,則 處理态12之輸入/輸出暫在 士 一 贄存σσ 47碩取線狀態位元將會進 入南電位,代表等待接收牿 寻疋相郿處理器的讀取訊息。 參照第9、9a以及】〇岡 、 … 圓’以下的實施例將說明上述 步驟。卽點7的輸入/輪出軔左_ ^ 暫存為、47代表右連接埠38b的 頃取以及寫入狀態位元(分 ,^ ,^ , ^ 1D興β15),在此實施例 中的右連接埠38b係連接至卢裡即^ 接至處理态N6。位元B14與B13 为別為下連接埠3 8 d (連接至_ w w λ 能相_ 、埂接至處理益N1)之讀取以及寫入狀 悲位兀,位το B12與B11八w达丄士 ^ 刀為工連接埠38c(連接至處理 益N8 )之讀取以及寫入肤能一3019-8670-PF 35 200809529 Processor 12, then the processor 12 wheel ^ ^ ^ Input / Output Register 47 write line status bit will enter the zeta potential seven... 』, special delivery from a specific adjacent processing Write §fL interest. Similarly, the right adjacent computer of #4#様 waits to read the processor 12, and the input/output of the processing state 12 temporarily enters the south potential, and the waiting state is received. Look for the read message from the processor. The above steps will be explained with reference to the following examples of the ninth, nineth, and the following. Input/round of 卽7 轫 left _ ^ temporary storage, 47 represents right connection 埠 38b, and write status bits (minute, ^, ^, ^ 1D 兴 β15), in this embodiment The right port 38b is connected to Luli and is connected to the processing state N6. Bits B14 and B13 are read for the next connection 埠3 8 d (connected to _ ww λ energy phase _ , 埂 connected to process benefit N1) and written sorrow bit 兀, bit το B12 and B11 eight w丄士^ Knife for the connection 埠38c (connected to the treatment benefits N8) reading and writing skin energy one

位兀,位元Nl〇與N9分別為上 連接埠38a(連接至處理琴M 一如 為N13)之讀取以及寫入狀態位 X。在此實施例中’位A 16~9永遠係提供右、下、左以 及上(RDW之相鄰節點的讀取以及寫入狀態。接下來,夫 知弟1。圖對於輸入/輸出暫存器47的另一說明,其中係 顯不即點7的部分輸入/輸出暫存器。若位元βΐ6為高電 位,則具有來自處理器㈣的讀取請求,若βΐ5為高電位, 則具有來自處理器N6的寫入請求…14為高電 具有來自處理器N1的讀取請求,諸如此類。 、 七曰如上所述’中止會使處理器12暫時停止其處理工作 =持閒置狀態以檢查進入的資料或指令。此處有兩個 使:中止例行程序的情況。第一種情況發生於處理器12 從先前閒置狀態中啟動後。第二種情況發生於當處理 3019-8 670-pf 36 .200809529 執行程式但是中止執行的程式來檢查進人的訊息。 N〇P(又叫做no—op)為無作業指令,且在指令碼中標示 為亡四個點(····)。參照第4圖,Ν0Ρ可使用於當不需要^不 J堇使用一些或全部可用插槽54的情況。例如,在訊息 中’四個,(···.)係料訊息標頭,在某種程度上是由^ 其必須安全的丟掉標頭(在啟動之後)並且亦必須安全的 執订I頭(當已經執行或是中止執行處理器的程式碼), 可能會出現於這兩種情況。多個訊息也必須安全的從 :同方向同時到達。當每個訊息從四@ Ν〇ρ開始時,由於 母個處理H係讀取相同的訊息標頭,因此同時讀取至少兩 個不同的訊息將不會太困難。 ”處理II 12可以被指定為主要的工作者(wQrker)或 :生產型式,,的處理器12。若缺少了其他指令,此處理 器12預設為工作者’並且執行第n圖之工作者模式迴圈 2〇〇’該迴圈係設置於R0M中。此工作者處理器12維持睡 眠或是閒置狀態直到包含四個_的訊 作者 式迴圈_的開始傳送至工作者處…。第η 用中止例行程序(Ρ刪)之工作者模式迴目2QG的流程 圖。當工作者處理器12在歸中的預設工作者模式迴圈 200為閒置狀態時’訊息標頭的四個_在讀取訊息操作 21。中被當作資料。當訊息到達時,fetch A指令將來自 相鄰處理器12之四個·(置放於卫作者處理器12的τ 暫存器12)的字當作資料讀取。在第u圖之喚醒操作2ΐι 中讀取這四個·將會喚醒工作者處理器12。喚醒訊息將 3019-8670-PF 37 200809529 會啟動工作者處理器12。如同部分的工作 200,B暫存器働的内容或位址在預設設定 /輸出暫存…因此在,,讀取輸入/輸出=,向= =2中mcH B指令將會讀取輸入/輸出暫存器47的内容 ^判斷δίΐ息是從哪一個連接埠傳送過來的。 在”開始中止,,操作213中,為了根據上個步驟犯 在輪入:輸出暫存器47中所讀取的内容來準備,,檢查適· 連接槔刼作214 ’工作者處理器12因而缺乏任何處理活 動性。接下來會出現來自適當連接埠之,,&amp;行訊息,,摔作 215步驟。在執行所有進入訊息之後’ _ε將會於,,結 束t止知作216結束。此時,工作者處理器丨2將合於” 休眠/閒置”操作217中變為閒置狀態,並且等待;到其 他汛息標頭的到達來啟動或喚醒工作者處理器12。 、’〜而D之,所有的工作者處理器12休眠並且中止。 田工作者處理器12係休眠、喚醒並且讀取所有相鄰電腦 12之寫入請求被檢查的輸人/輸出暫存器47時,卫作者處 ^器12開始中止並接著執行進人訊息。在進人訊息的2 端具有返回(return;)或是具有返回效果之跳躍至連接埠 38。工作者處理器12接著會回到中止例行程序,檢查輸 +輸出暫存器47中其他訊息之下-位元,執行訊息,並 接著返回工作者迴圈以及進入休眠狀態以等待更多訊息。 Λ心被虽作工作。pAUSE係將當作喚醒工作以及連接 埠3 8之進入訊息視為休眠工作。 第12圖顯示使用PAUSE的第二事件,其中處理器12 3019-8670-PF 38 200809529 Γ,在操,作22G。在”讀取輸人/輸出暫存 永 ’处理為12不時會檢查輸入/輸出 4?以檢查相鄰處理器12之進入狀態。若 :: 47顯示有進入訊息,則 J出暫存益 將會22”止。接下來,在,,=止‘作中處理器12 要下;在檢查適用於輸入之遠拉迫,, 錢作223中處理器12將會檢查藉由輸人/輪出暫存 來表示之連接埠38。若指定連接埠38處有: :?”判斷操作224中所指示之訊息,則處理器12將合 :=進入訊息中的程式瑪,,操作225,包括四個騰。 丁進入訊息之後,則在,,最後連接埠完成?,,判斷摔 作⑽中判斷是否有其他連接璋38等待要傳送气自^ 需要檢查其他連接痒可能的輸入,則會重複回到步驟 ^檢查連接埠的輸入”操作。若連接埠沒有輸入,則如 判辦步驟224所指示,在這樣的狀態下處理器12將會返 口其原本的工作(步驟22〇)而不會進入休眠狀態。再按照 右、下、左以及上(RDLU)的順序檢查所有的連接埠⑽的 進入訊息並且執行其程式碼之後,最後連接璋將會完成執 行(步驟226),且處理器12將會返回步驟22〇執行原本的 主要函式。 大部分時候係由處理器12群組執行不同處理器以上 的通訊序列處理。若相鄰處理器12還沒準備好來接收訊 息,則傳輸處理器、12冑會進入休眠狀態或是進行其他工 作且將會需要點詢(pool )輸入/輸出暫存器47來尋找訊 息。然而,大部分時候當群組執行不同處理器Μ上的通 3019~867〇~pp 39 200809529 訊序列處理時,處理器〗 12僅讀取其連接埠 接埠38且相鄰處理器 &lt;牧坪d δ。處理器可 &gt; &gt; 接埠38之操作,接下來片 執仃項取所有四個連 •里裔12進入休目民处能古 相鄰處理器12之任一去拥—# 休眠狀恶直到四個 f執4亍寫入,讀跑_田如 查輸入/輸出暫存器47來 貝取處理益i2需要檢 12執行寫入。處理卷 、醒之後哪一個處理器 处里态1 2被喚醒來執行志 Μ可讀取A暫存器4〇a( :貝科…處理器 P暫存器40c(f料或…t暫存器傷(資料)或是 自#本甘 ^式馬),頊取暫存器40C的全部% 息代表其將會執行包括四個N0P之所有訊息。’… 處理器12可作為工作者續 沒有m自策住&quot;, 节者’取所有四個連接埠38,若 處理器12忙於執行工作(迴圈);眠狀態。若 當作工作來中止第—工作、”止(咖)哗叫 取增加四h作至1作^ 作料巾止且其將會讀 中止的主要:_料38,並接著返回被Bits, bits N1〇 and N9 are the read and write status bits X of the upper port 38a (connected to the processing block M as N13), respectively. In this embodiment, 'bits A 16 to 9 always provide right, bottom, left, and top (read and write states of adjacent nodes of RDW. Next, Fu Zhidi 1. Figure for input/output temporary storage Another description of the device 47, in which a partial input/output register of point 7 is displayed. If the bit β ΐ 6 is high, there is a read request from the processor (4), and if β ΐ 5 is high, The write request ... 14 from the processor N6 has a read request from the processor N1 for high power, and the like. [7] As described above, the 'abort will cause the processor 12 to temporarily stop its processing work = hold the idle state to check the entry. Information or instructions. There are two cases here: aborting the routine. The first case occurs after the processor 12 is started from the previous idle state. The second case occurs when processing 3019-8 670-pf 36 .200809529 Execute the program but suspend the execution of the program to check the incoming message. N〇P (also known as no-op) is a no-job instruction, and is marked as dead four points (····) in the instruction code. Referring to Figure 4, Ν0Ρ can be used when it is not needed. Use some or all of the available slots 54. For example, in the message 'four, (···.) the material message header, to some extent by ^ it must safely drop the header (starting After that) and must also securely fix the I header (when the execution of the processor code has been executed or aborted), it may occur in both cases. Multiple messages must also be securely: from the same direction at the same time. When each message starts from four @Ν〇ρ, since the parent process H reads the same message header, it will not be too difficult to read at least two different messages at the same time. "Process II 12 can be specified as The main worker (wQrker) or: the production type, the processor 12. If other instructions are missing, the processor 12 is preset to the worker 'and performs the worker mode loop of the nth figure 2' The loop is set in the ROM. The worker processor 12 maintains a sleep or idle state until the start of the four-in-one loop _ is transmitted to the worker.... n uses the abort routine (Ρ Delete) worker mode returns 2QG When the worker processor 12 is in the idle state when the preset worker mode loop 200 is in the idle state, the four messages of the message header are treated as information in the read message operation 21. When the message arrives The fetch A instruction reads the words from the four adjacent processors 12 (the τ register 12 placed in the weiwriter processor 12) as data. It is read in the wake-up operation 2ΐι of the u-th image. These four will wake up the worker processor 12. The wakeup message will be 3019-8670-PF 37 200809529 will start the worker processor 12. As part of the work 200, the contents or address of the B register are preset Set/output temporary memory... So, read input/output =, mcH B instruction will read the contents of input/output register 47 to ==2 ^Review which 埠 ΐ ΐ is transmitted from which port of. In the "starting abort," operation 213, in order to prepare according to the previous step in the rounding: output of the contents read in the register 47, the check connection 214 'worker processor 12 is thus checked There is no processing activity. Next, there will be a step from the appropriate link, &amp; line message, step 215. After all the incoming messages are executed, '_ε will be at, end t stop 216 ends. At this time, the worker processor 将2 will become idle in the "sleep/idle" operation 217, and wait; to the arrival of other suffocation headers to start or wake up the worker processor 12. . All worker processors 12 are dormant and aborted. The field worker processor 12 is sleeping, waking up, and reading the input/output register 47 of all adjacent computers 12 whose write request is checked. The device 12 begins to abort and then executes the incoming message. There is a return (return;) at the 2nd end of the incoming message or a jump to the connection 埠 38. The worker processor 12 then returns to the abort routine. Program, check the input + lose Out of the other messages in the scratchpad 47 - the bit, execute the message, and then return to the worker loop and go to sleep to wait for more messages. The heart is being worked. The pAUSE will act as a wake-up and connection. The incoming message of 埠3 8 is regarded as dormant work. Figure 12 shows the second event using PAUSE, where processor 12 3019-8670-PF 38 200809529 Γ, in operation, for 22G. In "Read input/output temporarily The memory is processed as 12 and the input/output 4 is checked from time to time to check the entry status of the adjacent processor 12. If:: 47 indicates that there is an incoming message, then J will temporarily save 22%. Next, at, =, stop the processor 12 to be under; in the check for the input, the money, the money The processor 12 will check the port 38 indicated by the input/round-out buffer. If the designated port 38 has: :?" to determine the message indicated in operation 224, the processor 12 will Combine: = enter the program in the message, operation 225, including four tens. After Ding enters the message, is it, and finally the connection is completed? , judge the fall (10) to determine whether there are other connections 璋 38 waiting for the transmission of gas from ^ need to check the other connection itch possible input, it will return to the step ^ check the connection ” input operation. If the connection 埠 no input, Then, as indicated by decision step 224, in such a state, processor 12 will return to its original operation (step 22) without going to sleep. Then according to right, down, left, and up (RDLU) After sequentially checking the incoming messages of all the ports (10) and executing their code, the last port will complete the execution (step 226), and the processor 12 will return to step 22 to execute the original main function. The communication sequence processing of different processors is performed by the processor 12 group. If the neighboring processor 12 is not ready to receive the message, the transmission processor, 12胄 will enter a sleep state or perform other work and will need The pool input/output register 47 is used to find the message. However, most of the time when the group executes the different processors, the pass 3019~867〇~pp 39 200809529 sequence processing , processor 〗 12 only reads its connection port 且 38 and the adjacent processor &lt; 牧 坪 d δ. The processor can be > &gt; &gt; operation 38, then the film is taken to take all four • The genius 12 enters the rest of the country and can be used by any of the adjacent processors 12—# dormant sin until four f writes 4 亍 write, read run _ Tian Ru check input / output register 47 Becker processing benefits i2 need to check 12 to perform the write. After processing the volume, wake up which processor is in the state 1 2 is awakened to execute the Zhi can read A register 4〇a (: Bec... processor P temporarily The buffer 40c (f material or ... t register damage (data) or from the #本甘^ horse), all the % information of the capture register 40C means that it will execute all the messages including the four NOP. '... The processor 12 can be used as a worker without a m self-sufficiency&quot;, the maker's take all four ports 38, if the processor 12 is busy performing work (loops); sleep state. The first - work, "stop" (coffee) screaming to add four h to 1 to make a towel and it will read the main stop: _ material 38, and then return to be

Tit的主要工作(第12圖)。 具有輸入/輪出接腳連接 埠39中具有位元來的仏在輪入/輸出連接 腳疋唯讀的且其可以葬由括 某二接 一 猎由5貝取輸入/輸出連接埠39中的位 兀而被讀取。某些接腳是讀 、 只^ /雨八接腳,且i 讀取或寫入輸入/輪出暫存器 ’、 曰 入。在—&amp; &gt; * + &amp; 中的位兀而進行讀取或寫 取或寫入之後,交握信 在輸入/輸出暫存器47中讀取。連接至未連二= 的接腳將無法在輸,暫存 =: 看到右包括喚醒接腳的位址被讀取,則處理器Η將會 3019-8670-PF 40 200809529 於信號出現於接腳時被喚醒,但若讀取輸入/輸出暫存器 47則處理器1 2 *會看見喚醒交握。喚醒接腳僅連接至喚 醒電路而不會連接至輸入/輸出暫存器。因此,必須直 接讀取接腳來判斷處理器12是否被接腳喚醒。若讀取 腳之值為0,則其他連接璋38之一者會喚醒處理器、&amp; 這就是序列工作者處理器中咖程式碼的運作方式。 ^列處理器具有連接至可#作f料讀取之輪入/輸出 暫存為位70 (位兀! 7)之序列輸入接腳,然其亦連接至未 =通=連接埠(⑽p。⑴之交握線。讀取未連結通訊連接 腳ΐΓ=12將會於接腳上的資料告訴處理器12寫入接 5 、接埠(phant〇mp〇rt)時被喚醒。R⑽程式碼 於處理益12喚醒後藉由讀取接腳來判斷處理器被接 腳或是連接埠38喚醒。若該接腳為低電位,n ::::輸出一 者、处理益12執行序列啟動碼(b〇〇t c〇de)。 並你^啟,讀取或寫入時會拉高讀取或寫入交握位元。當 Γ2所1理☆ 12拉高讀取或寫人交握位元對時(被該處理琴 的:有位元都會降低),處理…被喚醒並: 旗送請之後,任何拉高的讀取/寫入交握 旗幟位TL皆會下降。 杈 的名處? 12跳躍至RDLU(四個相鄰連接埠38之位址 &amp;理器會嘗試讀取並且拉 幟,並接著進入無功率模式之休眠狀態當: 處理态寫入這此逯桩±皇qQ七r , 田和# 一 車38之至〉、一者並且拉高寫入旗幟 3019-8 670-ρρ 41 200809529 日守,:有連接埠38旗幟會被重設且第一處理器i2會被喚 醒。方處理器12讀取使用A暫存器術或B暫存器40b 之位址且執行資料操取或儲存時也會發生相同的狀況。處 理益12會進入休眠狀態直到四個相鄰連接璋之至少一者 上的資料喚醒處理器。 若喚醒接腳被當作四個連接埠38執行讀取的部分位 址且接腳不為高電位時,則處理器12知道處理器12是被 其他三個相鄰連接埠之其中—者所切。在序列啟動處理 二12的_中之序列啟動是來自喚醒處理器_接腳, 右该接腳為高電位’則從序列接腳載入程式碼並且由處理 器12啟動該程式碼。 在此推薦-種藉由使用xo封包路由路裡並且不會盘 其他造成衝突的方法。XG代表執行_伺服器之〇節點、, 某些路徑之節黑&quot;的訊息係定義於_中。訊息的路線不 應该彼此衝突。PAUSE可使訊息安全的路由。RAM伺服琴 緩衝器係允許RAM飼服器之節點〇的進入訊息缓衝於m 的即點6 t,使得其不需要備份且限制來自議飼服器的 訊息。這就是所推薦不會與χ〇衝突之路由路徑。 瞭解許多處理器12之間的多工合作是很重要的。— 組工作係存在於連接埠38以及本地記憶體中。職Η Β 以及pause將會依序檢查所有的連接埠38中的進入可執 行碼並且將連接璋38當作工作。連接埠Μ上的指令可以 不用載入處理器的RAM中而直接執行。 即使此處所揭露介於多處理器12之間的PAUSE例行 3019-8670-PF 42 200809529 私序係與第四代電腦語言有關,所有多處理器12之間 PAUSE例行程序的概念亦可應用至其他程式語言。 本發明雖以較佳實施例揭露如上,然其並非用以限定 本發明的範圍,任何熟習此項技藝者,在不脫離本發明&lt; 2 精神和耗圍内’當可做些許的更動與潤飾,因此本發明之 保護範圍當視後附之申請專利範圍所界定者為準。 【圖式簡單說明】 之電腦處理器陣列 第1圖顯示根據本發明實施例所述 的示意圖。 圖 第2圖顯示第】圖之電腦處理器的子集合以及第i 之内連資料匯流排的詳細示意圖。 弟3圖顯示第1圖與第2圖中卢 塊圖 口 /、乐z園中處理态之一者的佈局方 圖 程圖 =圖顯示根據本發明應用程式之指令字的示意圖。 圖顯示根據本發明所述之微迴圈的流程圖。 弟6圖顯示本發明用來從連接埠執行指令的方法流程 第7圖顯示本發明已改善之用來修改處理 器之方法流 第8圖顯示喚醒處理器以 流程圖。 叹得廷輸入至執行處理器的 第9圖顯示第1圖之處理哭 節點利用鏡僮盥u ^車列的Μ目,處理器或 鏡像與相鄰處理器共 3019-8 β7〇~ρρ 43 200809529 第9a圖顯示第 細節。第 圖的一部分,並具有額外的連接埠 第11 第12 10圖顯示輸入/輪出暫存器的一部分。 11圖顯不工作者模式迴圈的流程圖。 12圖顯示具有PAUSE例行程序之執行處 程圖。 理器的流 【主要元件符號說明】 10〜電腦陣列 1 0 a〜陣列 12、12a、12b、12c、12d、12e、12f、12g、N0-N23 處理器 14〜晶片 16〜資料匯流排 1 8〜讀取線The main work of Tit (Figure 12). The input/round-out pin connection 埠39 has a bit in the wheel-in/out connection pin and can be buried in the input/output port of the input/output port. It is read while being located. Some pins are read, only ^ / rain eight pins, and i read or write input / turn out the register ', 曰. After reading or writing or writing in the position of -&&gt; * + &amp;, the handshake is read in the input/output register 47. The pin connected to the unconnected = will not be able to be input. Temporary memory =: When the address including the wake-up pin is read, the processor will be 3019-8670-PF 40 200809529. The foot is awakened, but if the input/output register 47 is read, the processor 1 2 * will see the wake-up handshake. The wake-up pin is only connected to the wake-up circuit and not to the input/output register. Therefore, the pins must be read directly to determine if the processor 12 is woken up by the pins. If the value of the read pin is 0, then one of the other ports 38 will wake up the processor, &amp; This is how the code code in the sequencer processor works. The column processor has a serial input pin that is connected to the wheeled/output buffer that can be read as bit 70 (bit 兀! 7), but is also connected to not = pass = port 埠 ((10)p. (1) The handshake line. Reading the unconnected communication connection pin = 12 will be awakened when the data on the pin tells the processor 12 to write 5, phant〇mp〇rt. The R(10) code is After processing wake-up, the read pin is used to judge whether the processor is connected to the pin or the connection 埠 38. If the pin is low, n :::: output one, processing benefit 12 execution sequence start code ( B〇〇tc〇de). And you ^ start, read or write will pull high to read or write the handshake bit. When Γ 2 1 ☆ 12 pull high to read or write people to hold the bit On time (by the processing of the piano: there will be a bit lower), the processing... is awakened and: After the flag is sent, any read/write flag TL will be lowered. What is the name of the ?? 12 jumps to the RDLU (the address of the four adjacent ports &38 & the device will try to read and pull the flag, and then enter the sleep state of the no power mode when: processing state write this 逯 pile皇qQ七r, Tianhe# A car 38 to 〉, one and pull high write flag 3019-8 670-ρρ 41 200809529 日守,: There is a connection 埠38 flag will be reset and the first processor i2 Will be woken up. The same condition will occur when the processor 12 reads the address using the A scratchpad or the B register 40b and performs data manipulation or storage. The processing benefit 12 will go to sleep until four The data on at least one of the adjacent ports wakes up the processor. If the wake-up pin is treated as a portion of the address of the four ports 38 and the pin is not high, the processor 12 knows the processor 12 is cut by the other three adjacent ports. The sequence start in the sequence start processing of the second 12 is from the wake-up processor _ pin, the right pin is high potential, then the sequence is connected The foot loads the code and the code is started by the processor 12. It is recommended that the route is routed by using the xo packet and does not cause other conflicting methods. The XG represents the node of the execution server, The message of the black section of these paths is defined in _. The route of the message Should conflict with each other. PAUSE can make the message securely routed. The RAM servo buffer allows the incoming message of the node of the RAM feeder to be buffered at the point 6 m of m, so that it does not need to be backed up and the restriction is from the negotiation. Server message. This is the recommended routing path that does not conflict with χ〇. It is important to understand the multiplex cooperation between many processors 12. The group work is in port 38 and local memory. The job Η and pause will check all the entry executables in port 38 and treat port 38 as a work. The instructions on the port can be executed directly without loading into the processor's RAM. Even though the PAUSE routine 3019-8670-PF 42 200809529 between the multiprocessors 12 disclosed herein is related to the fourth generation computer language, the concept of the PAUSE routine between all the multiprocessors 12 can also be applied. To other programming languages. The present invention has been disclosed in the above preferred embodiments, and is not intended to limit the scope of the present invention. Any one skilled in the art can make a few changes without departing from the spirit and the scope of the present invention. The scope of protection of the present invention is therefore defined by the scope of the appended claims. BRIEF DESCRIPTION OF THE DRAWINGS Computer Processor Array FIG. 1 is a schematic view showing an embodiment of the present invention. Figure 2 shows a detailed diagram of the sub-set of the computer processor of the first figure and the data bus of the i-th. Figure 3 shows a layout diagram of one of the processing modes in the block diagram /, and the music in the first and second diagrams. The figure shows a schematic diagram of the instruction word of the application according to the present invention. The figure shows a flow chart of a micro-loop according to the invention. Figure 6 shows the flow of the method for executing instructions from the port of the present invention. Figure 7 shows a flow of the method for modifying the processor of the present invention. Figure 8 shows a flow chart for the wake-up processor. The ninth input to the execution processor shows that the processing of the crying node in Fig. 1 uses the mirror 盥u ^ ^ car column, the processor or mirror and the adjacent processor total 3019-8 β7〇~ρρ 43 200809529 Figure 9a shows the details. Part of the figure with additional connections 埠 11th Figure 12 10 shows a portion of the input/round-out register. Figure 11 shows the flow chart of the worker mode loop. Figure 12 shows the execution map with the PAUSE routine. Flow of the processor [Main component symbol description] 10~Computer array 1 0 a~Array 12, 12a, 12b, 12c, 12d, 12e, 12f, 12g, N0-N23 Processor 14~ Wafer 16~ Data bus 1 8 ~ read line

2 0〜寫入線 22〜資料線 24〜RAM 26〜_ 2 8〜堆疊 3 0〜指令區 3 2〜算術邏輯單元 34〜資料堆疊 3 6〜解瑪器2 0~Write line 22~Data line 24~RAM 26~_ 2 8~Stack 3 0~Command area 3 2~Arithmetic logic unit 34~Data stack 3 6~Solution

3019—8670—PF 44 200809529 38、38a、38b、38c、38d〜通訊連接埠 40、40a、40b、40c〜暫存器 4 2〜插槽程序器 44〜T暫存器 46〜S暫存器 47〜輸入/輸出暫存器 48〜指令字 5 0〜十八個位元 52〜指令 54a、54b、54c、54d〜插槽 6 6〜位元i 4: 173〜第二與第四列 1 7 4〜X軸 176〜第二、第四以及第六攔 1 7 8〜y軸 3019-8670-PF 453019-8670-PF 44 200809529 38, 38a, 38b, 38c, 38d~communication port 40, 40a, 40b, 40c~ register 4 2~slot program 44~T register 46~S register 47~Input/Output Register 48~ Instruction Word 5 0~18 Bits 52~Instructions 54a, 54b, 54c, 54d~Slot 6 6~Bit i 4: 173~Second and 4th Column 1 7 4 to X axis 176 ~ second, fourth and sixth barrier 1 7 8 to y axis 3019-8670-PF 45

Claims (1)

200809529 十、申請專利範圍: 1 ·種通矾方法,適用於複數電腦處理器之間的通 訊’包括: 提供一第一處理器; 提供一第二處理器;以及 槌上述第_處理器傳送一輸入至上述第二處理器,其 中上述傳送並不會中斷上述第一處理器之處理函式。 2 ·如申清專利範圍第1項所述之通訊方法,其中上述 輸入包括從上述第一處理器傳送至上述第二處理器之一 寫入函式。 3 ·如申請專利範圍第1項所述之通訊方法,其中每個 上述複數處理器包括複數通訊連接埠。 4 ·如申睛專利範圍第3項所述之通訊方法,其中每個 上述複數處理器更包括一輸入/輸出暫存器。 5 ·如申请專利範圍第4項所述之通訊方法,其中每個 上述輸入/輸出暫存器皆包括一讀取以及寫入狀態位元。 6·如申請專利範圍第5項所述之通訊方法,更包括檢 查上述t買取與寫入狀態位元之狀態的步驟。 7 ·如申晴專利範圍第1項所述之通訊方法,其中上述 複數處理器包括設置於一晶片上之一處理器陣列。 8 ·如申请專利範圍第7項所述之通訊方法,其中上述 傳送係藉由上述第一處理器與第二處理器之間的一資料 匯流排而達成。 9·如申請專利範圍第7項所述之通訊方法,其中上述 3019-8670-pp 46 200809529 處理裔陣列也· I + J匕括具有四個相鄰處理器之至少一内部處理 器0 、、1 〇·如申請專利範圍帛7項所述之通訊方法, 述處理器陣列#杯p I ’、 J匕括至少一處理器設置於上述陣列周圍,且 其中上述至少_步$田tm工 連結且更包括括連結至—輸人/輪出接腳之 輸入/輪出狀態位元。 11 -種共用方法,適用於複數處理器之間 工作,包括: 提供一第一處理器; 提供一第二處理器; 第二處理器之間提供一通訊連 在上述第一處理器 接埠; 從上:第一處理器傳送一輸入至上述第二處理器; 上述弟—處理器接收來自上述第一處理器之上述輸 入’其中上述傳送不會中斷上述第二處理器的處理函式。 如申請專利範圍第u項所述之共 述傳送係發生於各j、十、楚-士 ^ 、田述弟一處理器執行一工作時。 13·如申請專利範圍第12項所述之共用方法,其中上 述接收係完成於去μ、+、@ ^ 且姐”:田上述弟二處理器暫時中止上述執行並 來自上述第—處理器之上述傳送時。 &amp;如申請專利範圍第12項所述之共用方法,其中上 述苐一處理器傳送一輪入承4 ^ ^ ^ 更匕括將一輸入旗幟位元設定 為焉電位。 1 5 ·如申請專利範圚楚 〜乾固弟12項所述之共用方法,其中藉 4 7 3〇19~8 67 0-PF 200809529 由上述第一處理器回應上述接收輸入包括直接從上述連 接琿執行上述接收輸入之程式碼。 16. 如申請專利範圍第15項所述之共用方法,其中在 直接從上述連接埠執行程式碼之前並沒有將上述程式碼 儲存至一記憶體位置。 17. 如申請專利範圍第12項所述之共用方法,更包括 -軟體程式’其中上述軟體程式包括暫時中止執行上述第 二處理器之-工作,並檢查上述連接料是否有 第一處理器之輸入。 1 8 · —種方法,包括: -第-處理器傳送一輸入至一第二處理器,其中於傳 送時上述第二處理器係位於閒置狀態; 喚醒上述第二處理器來接收上述輸入; 上述第二處理器檢查一輸入/輸出暫存器,以判斷上 述輸入之來源; .上述第二處理器接收來自上述第一處理器之上述輸 上述第二處理器係回應來自上 輸入 述第一處理器之上述 19.如申請㈣範圍第18項所述之方法,其中上述方 法係藉由一軟體迴圈而執行。 20·如申請專利範圍第丨 只尸叮述之方法,其中上述喚 醒包括一訊息標頭,於喚醒後 、 文王的將上述訊息標頭丟 掉0 3019-8670-PF 48 200809529 第18項所述之方法,其中上述檢 之讀取與寫入交握狀態位元的狀 21·如申請專利範圍第 查包括判斷相鄰處理器之 態〇 收係發生於將上述第 22.如申請專利範圍第21項所述之方法,其中上述接 處理器以及弟二處理器之讀取與 寫入交握狀態位元拉低後。 23·如申請專利範圍第18項所述之方法,其中上述反 應係發生於上述第二處理器返回一閒置模式後。 24·如申請專利範圍第丨8項所述之方法,其中上述喚 醒係由多連接璋讀取函式所引起。 、 25.如申請專利範圍第18項所述之方法,其中上述喚 醒係由一接腳所引起。 26·如申請專利範圍第is項所述之方法,其中上述接 收包括將上述輸入當作資料讀取。 27·如申請專利範圍第ι8項所述之方法,其中上述方 法係設置於ROM中。 28·如申請專利範圍第27項所述之方法,其中上述方 法是ROM中的部分啟動 工作。 29. —種電腦可讀取媒體,用以儲存一程式碼,使— 電子裝置執行申請專利範圍第18項的步驟。 30. —種通訊方法,適用於複數電腦處理器之間的通 訊,包括: 提供一第一處理器; 提供一第二處理器,其中上述第二處理器係位於一警 3019-8 67 0—PF 49 200809529 戒但閒置狀態; 對每個上述複數電腦處理器提供 器; 、輸入/輪出暫存 上述第-處理器傳送一輸入至上述第 口口 上述傳送係使上述第-處 一处理器,其中 士 k罘一處理裔進入活動狀態; δ貝取上述第二處王里器之上述輸入/輸 上述輸入是來自那個處理器;以及 子态來判斷 上述第二處王里器直接執行上述輸入。 31·如申請專利範圍第3。項所述之通訊 、…頟外項取上述第二處理器之輸入/輸出暫 包:、· 判斷是否有額外的輸入傳送至上述第二處^ =二人以 上述第二處理器執行上述額外輸入。…及 32.如申請專利範圍第31項所述之通訊 述額外輸入係來自—第三處理器。 ,、中上 33· —種處理系統,包括·· :二連電腦處理器陣列,其中每個處理器更包括: 輸入/輸出暫存器; 一通訊連接埠,設置於上述處理器之四側; 一傳运:’用來傳送-輸入至其他上述處理器;以及 •妾收态肖來接收來自其他上述處理器之上述輸 , ::視器,其中接收上述輸入之每個上述處理器可判 斷上述輸入的來源;以及 執行器’其中每個接收上述輸入之上述處理器可回 3019-8 67〇-pp 50 200809529 應上述輸入。 34.如申請專利範圍第33項所述之處理系統,其中: 上述傳送器包括-第一連接槔,設置於一第一處理器 二來:專送上述輸入’上述第一連接埠係與—預期接收處理 益相鄰,以及 上述接收器包括一第_ #Ii# 卢”、… 弟—連接埠’ 4置於上述預期接收 处益述弟二連接蟑儀與上述第一處理器相鄰。 35.如申請專利範圍第%項所述之處理系統, 述接收器更包括一 Η雜…σ m /、〒上 埠傳送至上述第二連料之上述輸人。〇連接 — 36·如申請專利範圍第33項所述之處理系統, 述弟一處理器之g6顏哭 、、、 ,、中上 硯态可中止上述第一慮理突 作,以判斷一輸入是 為之處理工 疋么由弟二處理器所傳送。 37. 如申請專利範圍第犯項所述之 接收處理器係直接從—傳 ’、4*,,、中一 入。 傳运處理益之連接埠接收上述輸 38. 如申請專利範圍第33項所述之 述傳送器可以將上述輪一 抑 系、、先,其中上 收處理器。 ^ k *理為傳送至-非相鄰接 3019-8 670-PF 51200809529 X. Patent application scope: 1 · A general communication method, suitable for communication between a plurality of computer processors' includes: providing a first processor; providing a second processor; and transmitting the first processor Input to the second processor, wherein the transmitting does not interrupt the processing function of the first processor. 2. The communication method according to claim 1, wherein the input comprises a write function from the first processor to the second processor. 3. The communication method of claim 1, wherein each of the plurality of processors includes a plurality of communication ports. 4. The communication method according to claim 3, wherein each of the plurality of processors further includes an input/output register. 5. The communication method of claim 4, wherein each of the input/output registers includes a read and write status bit. 6. The communication method of claim 5, further comprising the step of checking the state of the above-mentioned t-buy and write status bits. 7. The communication method of claim 1, wherein the plurality of processors comprises a processor array disposed on a wafer. 8. The communication method of claim 7, wherein the transmission is achieved by a data bus between the first processor and the second processor. 9. The communication method according to claim 7, wherein the above-mentioned 3019-8670-pp 46 200809529 processing array also includes at least one internal processor 0 having four adjacent processors, 1 〇 如 申请 申请 申请 申请 申请 申请 申请 申请 申请 申请 申请 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器 处理器It also includes an input/round-out status bit that is connected to the input/wheeling pin. 11 - a sharing method, applicable to work between a plurality of processors, comprising: providing a first processor; providing a second processor; providing a communication between the second processor and connecting to the first processor; From above: the first processor transmits an input to the second processor; the processor-processor receives the input from the first processor 'the processing function in which the transmitting does not interrupt the second processor. The transmission system described in item u of the patent application scope occurs when each of the j, ten, Chu-shi, and Tian Shudi processors performs a job. 13. The sharing method according to claim 12, wherein the receiving system is completed by going to μ, +, @^ and the sister: the above-mentioned second processor temporarily suspends the execution and is from the first processor In the above-mentioned transmission method, the sharing method described in claim 12, wherein the first processor transmits a round of input 4^^^, and further includes setting an input flag bit to a zeta potential. For example, the sharing method described in the patent application Fan Chu Chu ~ Gan Gudi 12, wherein borrowing 4 7 3〇19~8 67 0-PF 200809529, responding to the above receiving input by the first processor includes performing the above directly from the above connection The input code is received. 16. The method of sharing according to claim 15 wherein the code is not stored in a memory location before the code is directly executed from the port. The sharing method of the ninth aspect, further comprising: a software program, wherein the software program includes temporarily suspending execution of the second processor, and checking whether the connection material is There is an input of the first processor. The method includes: - the first processor transmits an input to a second processor, wherein the second processor is in an idle state during transmission; waking up the second The processor is configured to receive the input; the second processor checks an input/output register to determine a source of the input; and the second processor receives the second processor from the first processor The method of claim 18, wherein the method described in claim 18, wherein the method is performed by a software loop, is as follows: The method, wherein the awakening comprises a message header, and after waking up, the king removes the message header from 0 3019-8670-PF 48 200809529, wherein the reading and writing are performed. The state of the state bit 21 is as described in the scope of the patent application, including determining that the state of the adjacent processor occurs in the above-mentioned 22nd, as described in claim 21 of the scope of the patent application. The method of claim 18, wherein the reading and writing of the handshake state bit are pulled down. The method of claim 18, wherein the reaction occurs in the second The processor returns to an idle mode. 24. The method of claim 8, wherein the wake-up is caused by a multi-link read function. 25. as described in claim 18 The method of claim 1, wherein the waking is caused by a pin. The method of claim 1, wherein the receiving comprises reading the input as data. 27. The method of claim 1, wherein the method is set in a ROM. 28. The method of claim 27, wherein the method is a partial startup work in the ROM. 29. A computer readable medium for storing a code such that the electronic device performs the steps of claim 18 of the scope of the patent application. 30. A communication method, suitable for communication between a plurality of computer processors, comprising: providing a first processor; providing a second processor, wherein the second processor is located in a police 3019-8 67 0 - PF 49 200809529 ???but idle state; for each of the above plurality of computer processor providers;, input/round-out temporary storage of the first processor to transmit an input to the first port of the transmission system to enable the first-to-one processor , the sergeant k 罘 处理 处理 处理 处理 处理 ; δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ δ . 31. If the scope of patent application is 3rd. The communication, ..., the external item takes the input/output temporary packet of the second processor:, and determines whether additional input is transmitted to the second location ^=two people perform the above additional with the second processor Input. ... and 32. The communication input as described in claim 31 of the patent application is derived from the third processor. , the upper middle 33 · a processing system, including: · two computer processor array, each of which further includes: an input / output register; a communication port 设置, set on the four sides of the processor a transport: 'used to transmit-input to other of the above processors; and 妾 妾 来 接收 接收 接收 接收 接收 接收 接收 接收 接收 接收 接收 接收 :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: Determining the source of the above input; and the actuator 'each of the above processors receiving the above input can return 3019-8 67 〇-pp 50 200809529 should be input as described above. 34. The processing system of claim 33, wherein: the transmitter comprises: a first port, disposed on a first processor 2: the input of the input 'the first connection system and the It is expected that the receiving processing is adjacent, and the receiver includes a _#Ii#lu, ... the —-connect 埠'4 is placed at the expected reception, and the second router is adjacent to the first processor. 35. The processing system of claim 100, wherein the receiver further comprises a noisy ... σ m /, and the upper sputum is transmitted to the second input of the second ligature. 〇 connection - 36 · if applying According to the processing system described in Item 33 of the patent scope, the g6, the crying, the, the middle, and the upper middle state of the processor may suspend the first reasoning to determine whether an input is for processing. Transmitted by the second processor. 37. The receiving processor described in the first paragraph of the patent application is directly from the transmission, 4*,,, and the first one. As stated in the application for patent scope, item 33 The transmitter can adjust the above-mentioned wheel, first, and then receive the processor. ^ k * is transferred to - non-adjacent connection 3019-8 670-PF 51
TW96105683A 2006-02-16 2007-02-15 Computer system with increased operating efficiency TW200809529A (en)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US11/355,495 US7904615B2 (en) 2006-02-16 2006-02-16 Asynchronous computer communication
US11/355,513 US7904695B2 (en) 2006-02-16 2006-02-16 Asynchronous power saving computer
US78826506P 2006-03-31 2006-03-31
US79734506P 2006-05-03 2006-05-03
US11/441,818 US7934075B2 (en) 2006-02-16 2006-05-26 Method and apparatus for monitoring inputs to an asyncrhonous, homogenous, reconfigurable computer array
US81808406P 2006-06-30 2006-06-30
US84949806P 2006-09-29 2006-09-29
US11/653,187 US7966481B2 (en) 2006-02-16 2007-01-12 Computer system and method for executing port communications without interrupting the receiving computer

Publications (1)

Publication Number Publication Date
TW200809529A true TW200809529A (en) 2008-02-16

Family

ID=44767172

Family Applications (1)

Application Number Title Priority Date Filing Date
TW96105683A TW200809529A (en) 2006-02-16 2007-02-15 Computer system with increased operating efficiency

Country Status (1)

Country Link
TW (1) TW200809529A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI503745B (en) * 2008-02-29 2015-10-11 Euroclear Sa Nv Improvements relating to handling and processing of massive numbers of processing instructions in real time

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI503745B (en) * 2008-02-29 2015-10-11 Euroclear Sa Nv Improvements relating to handling and processing of massive numbers of processing instructions in real time

Similar Documents

Publication Publication Date Title
KR101516109B1 (en) Reducing power consumption of uncore circuitry of a processor
CN1890640B (en) Efficient system management synchronization and memory allocation
US8825924B2 (en) Asynchronous computer communication
US7904695B2 (en) Asynchronous power saving computer
EP1821211A2 (en) Cooperative multitasking method in a multiprocessor system
TW200907698A (en) Method and apparatus for loading data and instructions into a computer
US7752422B2 (en) Execution of instructions directly from input source
US7966481B2 (en) Computer system and method for executing port communications without interrupting the receiving computer
US8468323B2 (en) Clockless computer using a pulse generator that is triggered by an event other than a read or write instruction in place of a clock
TW200905556A (en) Communicating data
TW200809609A (en) Microloop computer instructions
TW200809529A (en) Computer system with increased operating efficiency
JP2009009549A (en) System and method for processing data by series of computers
US7934075B2 (en) Method and apparatus for monitoring inputs to an asyncrhonous, homogenous, reconfigurable computer array
EP1821174B1 (en) Asynchronous power saving computer
JPS6146552A (en) Information processor
JP2009527814A (en) Allocating resources between arrays of computers
JPH01224847A (en) Electronic computer processing system