TW201216154A - Conditional selection of data elements - Google Patents

Conditional selection of data elements Download PDF

Info

Publication number
TW201216154A
TW201216154A TW100135780A TW100135780A TW201216154A TW 201216154 A TW201216154 A TW 201216154A TW 100135780 A TW100135780 A TW 100135780A TW 100135780 A TW100135780 A TW 100135780A TW 201216154 A TW201216154 A TW 201216154A
Authority
TW
Taiwan
Prior art keywords
data
condition
conditional
storage element
instruction
Prior art date
Application number
TW100135780A
Other languages
English (en)
Other versions
TWI536261B (zh
Inventor
Simon John Craske
Richard Roy Grisenthwaite
Nigel John Stephens
Original Assignee
Advanced Risc Mach 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
Application filed by Advanced Risc Mach Ltd filed Critical Advanced Risc Mach Ltd
Publication of TW201216154A publication Critical patent/TW201216154A/zh
Application granted granted Critical
Publication of TWI536261B publication Critical patent/TWI536261B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/265Microinstruction selection based on results of processing by address selection on input of storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30072Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Description

201216154 六、發明說明: 【發明所屬之技術領域】 本發明係關於資料處理 基於條件選擇來源資料元 設備之領域,且特定言之,係 素之條件式選擇指令之領域。 【先前技術】 條件式選擇曾經用在藉由Ww的arm⑧處 理上’該等指令命令虚理哭說 pv恩理器僅於回應滿足預先定義之 件時κ 處理操作可要求以滿足的條件之實例為^ 於、多於、等於、為負、進位輸入、為零等等。 特定言之,高端處理設備至少部分平行地實行指人, 在該等高端處理設備上的條件式指令之缺點為,當户人 流中條件式指令的後續指令要求條件式指令的結果^ 輸入時,可能依據條件的滿足與否而要求原始值或更: :。:後續指令已進入管線,而條件式指令亦仍在管線 甲,原始值或更新值需要在管線中可為後續指令所用。 此舉可能要求原始值的附加讀取,對 相當高的負擔。 午人說有 器基於滿足之條件,從二個來 的暫存器的結果,此舉亦為習 利用選擇指令導致處理 源暫存器選擇欲被寫入目 知技藝。 的功能且仍然維持效 將期望可以保持許多條件式指令 能。 201216154 【發明内容】 從第一態樣看來,本發明提供處理設備包人.… 儲=所,包含用於儲存資料元素之複數_存元素資= 指令解碼器,經配置以解碼至少—個條件式卜 該至少一個條件式選擇 、扣文, *七、 惲扣7扣疋主要來源儲存元素、次 要來源儲存元素、條件 、 素的資料元素中實杆夕4。从 次 原儲存/0 ”貫饤之刼作;-資料處理器,經配置以 猎由指令解碼器控制來實行資料處理操作,其、中勺= 列步驟.資料處理器係 3 靜μ b wm,謂碼的至少—個條件式選
擇才B々/、/、有預先決定社果&你I 疋、、,。果的條件,以在來自 儲存元素之資料元素中眘 人要來源 m…巾實饤該刼作’以形成合成資料元 素,以及資枓處理器係 靜M w ⑽讀碼的至少-個條件式選 擇扣令與不具有預先 音中m 又、'、。果的條件’以從主要儲存元 素中的Μ #70素形成合成資料元素 本發明認知到,條杜1~人 <係回應預先決定結果 之條件,而選擇儲存在 ^ 在儲存70素中之特定值的有效方 式。預先決定結果可為你杜 為條件已滿足,或條件未滿足。本 發明亦認知到,若條件g T八遊擇扣令導致在一個 之值中實行操作時m ’、 奴者直接決定選擇存取二個儲存元 素中的一個’則此舉可接 抚供具有许多傳統條件式指令之 性質,又沒有效能缺點的指令。 在一些實施例中,扣 心令更進一步指定目的儲存元素, 201216154 :::理裔係回應至少_個條件式選 成㈣元素在目的错存元素中。 以储存合 該=定合成資料元素儲存於目的儲存元素中,或 先決定的健存位置上。直接複寫合成貧料元素在預 一者,例中,目的儲存"1素可為來源館存元素之 存元素其他實施例中,目的儲存元素可為不同的錯 個例中,資料處理器·係回應經解碼的至少-==指令與未具有預先決定結果的條件,以在 源儲存元素中之資料元素中實行操作,並從主要 "、儲存70素中之資料元素形成合成資料元辛。 元素2^有預先決U果時,則選擇主要來源儲存 … '料兀素之來源。在-些實施例中,儘管選 儲存元素’但藉由條件式選擇指令指定的: 要來源健存元素中之資料元素中實行。儘管此 m並不需要此操作結果1而不論如何,實行此操 =利的’例如-般決定條件結果耗f—顯著數量的 二仃:間’而因此,若在知道條件是否具有預先決 之别,在次要來源儲存元素中實行操作,則二個 ::::在條件結果決定之前都已備妥,可減少程序的 在二實施例中,該至少一個條件式選擇指令包含: 增加條件式選擇指令,且該操作包含以下步驟:增加來 201216154 自-人要來源儲存元素之資料元素。 一條件式選擇指令可具有相關聯的不同操作,但在一些 =例:,條件式選擇指令包含:增加條件式選擇指令, 、該操作包含以下步驟:增加選擇資料元素。 •νϋ —些實施例中’條件式選擇指令包含:反向條件 U:令其中該操作包含以下步驟:邏輯反向選擇 ,兀,、,以產生逐位元邏輯反向的儲存元素值。 件可在—些實施例中結合以形成-反向增加條 &令1逐位元邏輯反向並接著增加值以產生 資料元素的運算否定。 在一些實施例中,儲存元素 零值之儲以素名稱。㈣儲存所包含:映射至 條件式選擇指令提供相關聯的操作,例如反向與增 二而儲存元素映射至零值的可能性提供處理設備實‘ ===力,該等操作映射至藉由許多舊有條 貫’作。該等實例列舉於下。這樣—來, ㈣此條件朗擇料可模 統提供的條件式指令。此條件式選擇功能n 且方便的方式’該方式提供舊有條件式指 = 沒有許多效能缺點。 力他並且 熟習此項技藝者應明瞭,儲存元素可為若干種事物 舉例而言,在一些實施例中,儲存元素 在另一些實施例中,儲存元辛 ’、,,“存器,而 儲存兀素可為記憶體位置。 在一些實施例t,扣人fez 时 7解碼益經配置為回應該條件式 201216154 以輸出增加控制信號;以及處理器經配置以 擇指人^的條件式選擇指令,該等經解碼的條件式選 9 u .加法器,經配置以接收來 ::與:位輸入信號;多工器,經配置以接收來自:: 二:广,號與來自加法器之輸出之信號,多工器之 選擇^號包含條件,且具有該預 發多I 3¾ H 1 疋m果的該條件觸 選擇加法器之輪出;其中回應已設定該增加控 ^號,將進位輸入信號設定成卜且加法器增加至少 一個來源儲存元素的接收值。 处本發明之實施例之更進一步的優點為需要實施該等功 犯的電路系統為一簡單處理電路系統,並在許多狀況下 呈,在處理器中,且可再利用以提供需要的功能。舉例 而δ ’可利用加法器盘谁^於 ^ U位輸人^,增加控制信號設 -進位輸入信號,以及多工器之選擇功能為條件結果, 以提供增加操作。 在-些實施例中,指令解碼器經配置為回應條件式選 擇指令’以輸出反向控制信號;以及處理器經配置以處 理經解碼㈣件式選擇指令,該#崎碼㈣件式選擇 指令包含:加法器,經配置為回應已設定反向控制信號, 以接收來自次要儲存元素通過反向器之值,並回庫未抓 定反向控制信號,以接收來自次要儲存元素未通過反: 器之值;多工器’經配置以接收來自主要來源儲存元素 之信號與來自加法器的輸出信號,多工器之選擇信號包 含條件,且具有該預先決定結果的該條件觸發多工器^ 201216154 擇加法器輸出。 利用反向器可提供反向功 ^^ 且右與加法器耦接,反 向與增加可在需要時結合。 舉例而言’在一些實施例中 應條件式撰摆社人 ^ 7解碼器經配置為回 =物曰令,以輸出增加控制信號與反向控制信 定二中回應已設定增加控制信號,將進位輸入信號設 要=二回應已設定反向控制信號,加法器增加從次 要來/原儲存元素所接收之反向值。 提供反向與增加構件可由 值的能力。#件了由2的補數形式提供運算否定 在—些實施例中,主要來源 元素為相同餘存元素。 存-素與次要來源儲存 儘管可使用不同來源儲存元素本 等來源儲存元素為相同儲存元^ = 具有預务$ + @ m 素在此狀況下,若條件 ,、有預先决疋結果’從實行操 元辛,& -作μ ρ叼儲存兀素中形成結果 素而右條件不具有㈣0 形成合成資料元素。此舉可 =_貝枓凡素來 接著,”式選擇中具有優點, 者右條件具有預先決定結果,每"4 不具有預先決定結果,不實行择/仃操作,且若條件 式為,從儲存_去 貫仃刼作。此舉實施的—個方 、勹從儲存7〇素形成二條 功能電路系統,另—條通過實行操作的 „ 、 條直接從儲存元辛走,根櫨格杜έ士 果選取傳送合成元素的路徑。 素走,根據條件結 在一些實施例中,從回應至 而設定之運算i5 Μ Μ 個先前資料處理操作 運以^標來決定條件結果。 201216154 不論條件是否具有預先決定結果,都從回應至少—個 先前資料處理操作而設定之電腦狀態儲存元素中之運算 邏輯旗標來決定。該等先前資料處理操作回應實行於: 件式選擇指令之前的至少—個指令而實行,且該等指令 決定條件的結果,例如,不論収與否皆根據此結果: 定旗標°因此’為了決;t條件是否具有確^結果,比較 確定條件碼與旗標,若相匹配,則決定條件具有預先決 疋結果,右未匹配,則決定條件不具有預先決定結果。 顯而易見地,此系統可反向以使得未匹配為具有預先決 定結果,而匹配則不具有預先決定結果。 、 先前資料處理操作可為若干種事物’但在—些實施例 中’該先前資料處理操作包含:具有其他值的至少一個 來源健存元素之資料元素。 條件碼可為某種事物,例如在來源儲存元素b中小於 確足值的值。為了決定此條件結果,比較儲存於儲存元 素B之值與確定值,而藉由將儲存在儲存元素B之值減 去確疋值,該條件應為小於,旗標回應此條件設定。此 操作回應指令流中的稍早指令。因此’若設定負旗標, 則條件已滿足。 在另-些實施例中,至少—個先前資料處理操作包含 以下步驟:比較主要來源儲存元素之資料元素與次要來 源儲存元素之資料元素。 若兩個來源儲存元素具有確定的相互關係,則比較兩 者之值’且僅實行確定操作即為適當。若此為條件,然 10 201216154 後再—次的稍早的處理操作可為:比較該等值,設定旗 標’並從狀態旗標決定條件是否滿足。 條件可為若干事物,舉例而言,條件可為不等於、等 於 '小於、大於、大於或等於、小於或等於、為零、或 為負。從條件旗標可決定所有條件。 運算邏輯旗標包含:一負結果旗標、一零結果旗標、 一進位輸出旗標、與一帶正負號溢位旗標中之至^一 因此,值之間的比較通常為減法,而結果為負者將 指示其中-個值大於另—個,同樣地結果為零者將指示 兩值相等,諸如此類。 、在—些實施例中,條件的預先決定結果包含:條件已 滿足° 足如::前提到’條件的預先決定結果可為條件已滿 疋,或者,亦可為條件未滿足。 在-些實施例中’資料處理設備包含
用於實行Μ與減”作之„電 异Y 件式撰摆扣人 ^崎乐、,死,其中回應條 件式選擇心令,至少—些用於在 資料元素中實行握h + $來源儲存7G素中之 如同路系統包含運算電路系統。 作,兮笙媒1 路貫仃例如增加之操 作,該杨作可實行條 之栋 經呈現在處理器中用以眘/ 若此運算電路已 益γ用以實行加法盥述 方便地再利用此電路m行=杨作,則接著可 狀況中’可提供指令的功能而不c令。在此 系統,藉此對電路區域作有效率^量用額外附加的電路 201216154 在-些實施例中’條件式選擇指令包含—指示器,該 指示器指示來源與目的儲存元素的寬度。 本發明之實施例適合利用不同寬度儲存元素的設備。 因此,舉例而言’硬體可具有暫存器,該暫存器之儲存 元素為64位元寬’但是偶爾可利用32位元寬的儲存元 素執行程式。在此狀況下,可設定指示器並存取暫存器 的相關部分。 、一-八叩, g 含以下步驟:接收至少-個條件式選擇指令,該至少一 個條件式選擇指令指定主要來源儲存元素、次要來源倍 存兀素、條件、以及在健存於次要來源儲存元素之資乘 :素中貫行之操作;解碼至少—個所接㈣條件式選揭 指令丄決定條件是否具有預先決定結果;若條件具有芳 ^决疋結果’則選擇次要來源儲存元素,並在來自選揭 來:儲存元:之資料元素中實行操作,以形成合成資料 源儲/及右條件不具有預先決定結果,則選擇主要來 :存元素中之資料元素,以形成合成資料元素。 產品發第二g樣提供—種儲存電腦程式之電腦程式 Πσ匕3 .條件.式選擇指令,告谨;^本 以控制資料處理在㈣處理器上, y 行如本發明的第二態樣所述之方法 7 ,,可操作該條件式選擇指令。 含:I:的:四態樣提供一種用於處理資料之構件,包 中;素切存元素 牛用於解碼至少—個條件式選擇指令, 12 201216154 =少—個條件式選擇指令指定主要來源儲存元素 要來源儲存元音、故# 人 、’、牛、以及在儲存於次要來源儲存元 素的資料元素中眚#^ ^ ’、 之操作,處理構件,用於實行藉由 才S々解碼構件控制的 也_ 貢料處理操作,其中:處理構件孫 回應經解碼的至少一個條件,f i 、 結果的條件令與具有預先決定 來自次要來源儲存元素之資料元素上 Μ * 1形成合成資料元素;以及處理構件係回庫 、-i解碼的至少一個條件式 .似 m^^ 卞八、擇扎令與不具有預先決定社 果的條件,以從主要儲存元辛 ° 料元素。 謂仔70素中的資料元素形成合成資 本發明的第五態樣藉由一,^ ^ 式運打在—f料處理 '、種虛擬機’該虛擬機根據如本發明的第— u 策所述之資料處理設備提供_指令運行環境。 ^閱實施例中對應之隨附圖式,並從實施例之詳細說 月將可明顯得知如上所述之 α #與本發明之其他物件、 特徵結構、與優點。 【實施方式】 第1圖圖示根據本發明之_ 货R㈣貫施叙資料處理設備 工〇。此資料處理設備10具有 、啕用於儲存被處理的指令 料儲存所20。資料處理設備 拥ιυ具有用於處理指令之 線3〇’該指令包括用於從 - 7儲存所20讀取指令的讀 早兀32,用於解碼該等指令的指令解碼器34,以及用 13 201216154 於處理解碼指令的處理單元36。 亦具有暫存器組40包含複數個暫存器。處理單元36 從該等暫存器寫入與讀出資料。暫存器組包括含有處理 器狀態旗標的程式狀態暫存器(cpSR)。回應處理操作 而設定該等狀態旗標,並藉由處理器可利用狀態旗標以 決定處理器的特定條件或狀態。 在此實施例中,亦具有映射至零的暫存it X3卜因此, 當藉由指令選擇此暫存器時,永遠給零值。 解碼器3 4經配晋以奴< 姑& /m & 置以經解碼的一個指令為條件式選擇 指令。回應此解碼指令,處理器在由指令指定的來源暫 存器之一個中實行由指令指定的操作接著當合成元素 寫入目的暫存器,則選擇此來源暫存器或另—來源暫存 第2圖圖示處理單元 處理電路系統可用於係 操作。 3 6中的處理電路系統之實例,該 回應條件式選擇指令以實行處理 在本發明之實施例中,條件式選擇指令可在暫存 的值中實行二個操作之-。條件式選擇指令可回應已 设定增加控制信號(INC_贿)而增加值,或可回 應已設定反向_旗標(INVERT),Μ由實行逐位元 =存值之每-位元做邏輯反向,以反向值。條件式選 料令取決於條件,因此,*論決定條件滿足與否,輸 出都取決於此一或其他暫存器。 因此,第2圖的實施例有二個來源暫存器 201216154 ==二二個來源暫存器皆為32位元寬,儘管在 替代的實施例中,二個來源暫存器皆為“在 -些實施例中,二個來源暫存器皆可為另 回應條件式選擇指令中之選擇位元,而把^寬,但係 器當作32位元暫存—來源暫存 或讀出。 且僅較间或較低的32位元寫入 根據實行條件式選擇指令可Μ的任何操作,暫^ Rm之-為次要暫存器。因此,在此實施例 ; 擇指令可指定反向操作、增加操作、兩者或兩者皆: 若為兩者皆非,接著條件式選擇功能利 選擇暫存器暫存器V ^ 5〇直接 =意,儘管暫存器%與1圖示為不同暫存器,但 子益R4 Rn在本發明之實施例中可為相同暫存器, 並’、有直接從暫存器至多卫器的資料路徑與通過功能電 路系統的另一資料路徑。 從指令相關聯的條件決定多U5G的選擇信號,利用 ㈣單元6G評估該指令。在此實施例中,評估單元6〇 比較此指令相關聯的條件碼與儲存在處理設備的cpsR 暫2器中的運算邏輯旗標。若條件碼與旗標匹配,接著· 決义條件已滿足與暫存器Rm被選擇。若條件碼與旗標 不匹配,接著決定暫存器、被選擇。 匕因此,在基本狀況下,當反向或增加信號都沒有設定, 才曰7如條件式選擇功能指令動作,且取決於條件滿足與 否以選擇Rm4 Rn。然而,若指令為反向條件選擇指令, 15 201216154 則設定反向(INVERT)㈣,且異 <(職)間⑺對 暫存器Rm的每-個位元逐位元作反向,而反向值為經 由加法器75至多工器5〇之輸出。若未設定增加 (me黯謝)錢1㈣直接為逐位元反向,若 選擇功能選擇暫存 ° m反向值為目的暫存器Rd之輸 出°若選擇功能選擇暫存器Rn,則實行逐位元反向,但 至目的暫存器的輸出不選擇反向結果。 增加信號亦為此處理電路系統之輸入,且增加信號在 加法器75時為進位輸人信號,因此當設定增加信號時,
加法器接收-進位輸入。因此,當設定增加信號時,若 條件具有預先決定結果,利用多工器50增加並選擇x〇R 閘70之值輸出’在未設定反向的狀況下’值儲存於暫存 益Rm,與在設定反向信號的狀況下,反向值儲存於暫存 器Rm。若設定反向與增加信號兩者,接著值輸出為儲存 於暫存H Rm之值的負的2的補數。若僅設定增加信 直接對儲存於暫存器Rm之值增加1。 ) 應注意,實行於儲存在暫存器Rm之值的操作,在利 用多工器50實行選擇之前實行。因此,若不選擇暫存器 Rm,就沒有實行該等操作的目標。然而,條件碼評估_ 般耗費明顯的時間,因此,若僅在實行操作的最後才要 求此結果,此舉可具有優點。 第3圖圖示處理電路系統的替代實施例,類似於如第 2圖所圖示,除了在處理設備的一般運算電路中的再利 用加法器電路系統75。因此,當與第2圖比較,第3圖 16 201216154
具有附加AND閘8〇,去考畑你A 浐八_ *處理電路系統實行條件式選擇 二·,利用附加AND閉8〇遮蔽暫存器a至加法器乃 入為I因#運行條件式選擇指令時,_閘之輸 ㈣…使得健存於暫存器A之值無法到達加法器。當 般處理操作的部分運算雷 蔽暫…之h 統時’ ΑΝ〇閘不遮 盘B,:輪人可利用加法器75加上暫存器a ’、$加上暫存器A與具有反向值的暫存器3。 於ΪΓΓΓ擇功能的狀況下,利用加法器75增加儲存 之值’ S戈增加儲存於暫存ϋΒ之反向值,因 丄加法器的另_個輸入(暫存器Α)在實行_般運算 曰γ下呈現被AND閘8〇 缔H q前 隹具他方面,此電路系 ·,,/、第2圖所述之電路系統相同。 XOR邏輯藉由產生 社果遂相… T果以楗供反向功能,該中介 、-。果逐位凡對暫存器Β中的每一位 〇r(x〇r)。應瞭解 :°5唬作互斥 示之處理器…運算單電元路=倂如第3圖· 為分別的…統早或可如第2圖所圖示建立 第4圖圖示條件& a ^ 例。因此,回應C 類型與輪出值之實 至 : °或增加域的條件式選擇指令, 子态之輸出為儲存於主要暫存器 儲存於次要暫存器Rm之值,係取決 = 單元是否匹配。 連算邏輯 回應增加信號己設定的條件式選擇 器Rm所接收的值,且又Α ε 增加從暫存 值且又-次,至目的暫存 17 201216154 儲存於暫存器11„之值或為儲存於 係取決於條件與旗標。 m之增加值’ 若設定反向信號,接著對從暫存 m所接收的值遂 位兀反向’而又一次’寫入目的暫存器之 反向值或為Rn之值’係取決於條件與旗伊 m之 若設定反向與增加信號,接著來自暫存:疋匹配。 反向且增加。此舉產生儲存Rm之值則 牛厘玍之值的2
為原始值的運算否定型式。又—次, > P Ψ & ^ ^ ^ 馬入目的暫存器之 輸出為儲存於暫存器Rn之值或為儲存於暫 向增加值,係取決於條件與旗標是否匹配。⑺之反 在此實施财’此條件碼為四 存器Rn,而是選摞塹;^ u 礼不不選擇暫 c爾暫存H的旗標⑺㈣為 Λ儲存於 C與指示”果,2… 值並包含Ν、Ζ、 以及W盤 不零結果,C指示進位輸出, 不帶正負號的運算溢位。該等旗標藉由稍早的 貝料處理接作兮干的 摔作Ι/V。 在條件式選擇指令運行之前, li乍運仃以實行所需之比較以決㈣件式選擇指令滿足 /、。该等#作可回應比較指令 依照比較結果設定 η㈣比較指令 、心。為了決定條件滿足與否,與指 ::已滿足的確定旗標值匹配的條件碼可在條件式選 否。曰 碼,直接比較此碼與旗標將決定條件滿足與 該等稍早的處理$ 於比較來源暫可絲比較指令的型式,或許用 态之—值與來源暫存器之另一值,又或 201216154 許時來源暫存器之值與設^值。比較指令—般實行減 法操作’且此結果設定;重管姑4© 又疋運异旗標。因此,若指令與條件 :為當A小於B時將增加B,則接著比較指令可將B減 去A,且若結果為負,目丨执 貞貝又疋N旗標,因此,條件碼應 具有匹配已設定的;fsj後i» ·> 4»丨丨』
Mb之型式。此比較指令可在條件 式選擇指令之前實行,且該比較指令甚至可在沒有設定 運算邏輯旗標的甲間指令提供之前實行數個指令^ 如先前所述,此條件式選擇指令的優點之一係 先則條件式之功能而沒有先前條件式指令之一些缺 ^ ^圖圖示條件式選擇指令可提供等效功能之例示 性條件式指令。 因此,在第-個實例中,條件式選擇指令可在^0 之間提供選擇。此舉使用映射至〇的暫 存器在帛1圖的實施例中為 .,、、該暫 1而在此圖中為達精:::::射至值°的暫存器 勹廷謂間之目的係以如R0圓示。 二兄中’映射至。的暫存器用於作為二個來源暫存器, b =決於條件選擇。值或選擇增加值為。值來使用辦 b,並因此,取決於條件而使輸出為〇或卜3 條件式選擇指令亦可㈣在G值與 選擇。在此狀況中,使用反的遮罩之間 存器真A 使用反向刼作且使用映射至。的暫 “再-次用於作為二個來源暫存器暫 非選擇此暫存器作為目的暫存器,則二=,若 反向版本。此暫存器的反向版本將為=暫存器的 於條件是否滿足,提供。值暫 、遮罩,並取決 值暫存益或1的遮罩給目的暫 19 201216154 存器。 條件式選擇指令亦可用以輸出儲存於暫存器中之 :::提供此功能,最初藉由比較此暫存器之值與〇 加:设定條件旗標’該暫存器在此實例令為R3。選擇掩 -個來條件式選擇指令與暫存器R3用於作: I:來丨源暫存器與目的暫存器,而條件為小於。因此, 右小於〇,gp甚p 1 、 R3為負值,則增加並反向儲存於R3 值,以提供此值(該負值) ._ 的補數。因此,若鍅 ^、R3之值為負,則否定該值,此亦表示儲存於R3之 2正值版本為輸出。然而,若儲存於幻之值為正, 條件小於為未滿足, 主要暫存器亦為R3,則儲存於主 要暫存1§之值為輸出。因此, ^ . 藉由使用此特定條件式選 擇指令,以提供絕對值指令。 下一個實例提供條件式婵 ㈣社人, 以增加值’在此狀況中,條件式 選擇指令選擇增加操作。 在此狀況中,主要暫存器指定 而:人要暫存器為目的暫存器。條件為儲存於们 之值等於儲存於^之婵 仔於Κ3 針私因此’若為此狀況,則 儲存於R3之值為輸出。若不為此狀況 R4之值並儲存於r4。 下列指令顯料關指令之條件可如何*取決於儲存於 來源暫存器之值,但可相關於儲存於其他暫存器之值。 在此狀況中,條件式選擇指令用於模擬條件式指令,若 儲存於Β之值等^,則儲存於Α之值應增加。為了使 用條件式選擇指令以實行此舉1於歧旗標之起始指 201216154 = = 之值與G。接著,運行的條件式選擇 二灯增加操作,且來源與目的暫存器相同,以及條 此於。因此若暫存器W °之比較指令為等於, 因為此比較指令實際上為減法,將設定Z旗標。 指令之條件碼指示應設定旗標〇。若為此狀況,已辦 加的次要暫存器之值儲存 曰 鹜仔為A,即a增加。甚去 设定0旗標,即儲存於暫存器b 暫存器之值為輸出…μ 不等於〇,則主要 &句铷出,該主要暫在 亦為暫存11 Α。在此 狀况中,在主要暫存器中沒 器之信Α於山 乂有貫仃刼作,因此主要暫存 益之值為輪出’而非主 像ς面 胥臀存益之增加值為輸出。 第5圖的最後實例顯 若Β大於0,ABW Γ㈣件式選擇指令實行 中,比鮫#人 否則A設定成0。在此狀況 ., 旗私以比較暫存器Β與0。運行 的條件式選擇指令具有已 仃 器,該等來源暫存器U 信號與來源暫存 考/ μ '、存為映射至0的暫存器與目的暫存 斋,在此狀況中為暫存器Α。 臂存 比較指令顯示暫存器ΒΑ;^ 、右暫存器的 ^ ^ ^ ; 則選擇次要暫存器並如 在哭Λ — 之輸入增加1,且儲存1於暫 ° 。右條件未滿足,則B I + Μ 存器為暫存器〇,… 於〇,則選擇主要暫 子益0且儲存0於暫存器Αβ 因此’可由上列實例吾 供運行於 ,條件式選擇指令可用以提 ,、運仃於條件基礎之上的 的圖之中可清楚知来 °1能。此外,從先前 統實施。 、擇礼々能以簡單電路系 21 201216154 第6圖圖示根據本發明之一個實施例之示例性條件式 選擇指令。在此實例中,具有指示器SF指示操作指令 在32位元暫存器或64位元暫存器中。指示器盯使得 指令可使用在可處理32位元值或64 &元值的處理器 上。應注意在另-些實施财,此旗標可取決於使用指 令的處理器的性質,用以在不同大小的值之間選擇。 有單一位元的反向(INVERT)棚位,以控制第2圖與 第3圖的職邏輯,並決定次要暫存器之值反向盘否' 接耆有9位元攔位的操作碼(〇pc〇DE),以唯 指令為條件式選擇指令。接著 ° 明智D 接者有4位凡的次要暫存器說 月=以識別暫存器在此指令為主要來源暫存器。 接者有4位元的條件(C〇nd)欄位,以指定 與指示需要哪種旗標型式 '、 器。接著有i位元未使用,存^或次要暫存 指示器(Increment),以控亦為1位。元的增加 入,並決定儲存於次要暫存器之月值^圖的加法器$位輸 位元的主要來源暫存器疋否增加。接著有4 器,而接著有目的暫存器以識別主要來源暫存 和次要來源暫存器參照為「主點而言’主要 次要來源暫存器出現在指令中被i下、的::」二要和 要來源暫存器不具有更進-步的意義。主要和次 :注意,此為簡單示例性指令編 持的指令暫存器與二:件::决於藉由處理設潘所支 數目》此外,雖然在此實 22 201216154 例中,暫存n用於儲存來源與目的元素,但在另一歧實 施例中,來源與目的儲存元素可位於記憶體,其中資料 兀素說明符將定址於記憶體位置。 第7圖圓示運行此條件式選擇指令之方法之實行步驟 的流程圖。因此’最初接收經解碼的條件式選擇指令, 此^指定二個暫存器,暫存器1與暫存器2。 才曰派暫存盗2之中間值。該中間值決定是否設定反 ::若為是,中間值則邏輯反向。該中間值決定是否設 定增加。若較增加’中間值則增加。則取決於藉由條 件指令指定的條件是否滿足,以選擇至目的暫存器的輸 出值此’至目的暫存器的輸出若非中間值則為暫存 器1之值°在—些實施例中,若條件已滿足,則中間值 為^目的暫存H之輸出’而若條件不滿^,則至目的暫 存益之輪出為暫存器1之值。然而’在另-些實施例中, 回應條件已滿万的私山 、輪出可為暫存器1之值,而回應條件 不滿足的輸出為中間值。 右=間值為輸出,則取決於條件式選擇指令是否指定 η »操作及/或增加操作,此值可為暫存器2之初始值、 可為增加1之初始值、邏輯反向的初始值、 並接著增加i之初始值。 第8圖圖千t 圃圚不可利用的虛擬機實施方式。當稍早所述 實施例在操作> + 上 、一 作私疋的處理硬體支援技術相關的設備與方 法貫施本發明 . ^ 亦可能提供所謂的虛擬機實施硬體裝 置°玄等虛擬機實施方式在主處理器530執行,以執行 23 201216154 主操作系統520,並支援虛擬機程式510。通常地,大型 高效能處理器需要提供以合理速度運行的虛擬機實施方 式’但在某些情況下,例如當因為相容性或再利用的理 由’而期望在另一個處理器上執行本地程式時,可調整 這樣的方法。虛擬機程式510提供應用程式介面至應用 程式500,該應用程式介面與由實際硬體提供的應用程 式介面相同,該實際硬體為藉由虛擬機程式51〇建模的 裝置。因此,包括如上述記憶體存取控制的程式指令可 利用虛擬機程式510在應用程式500之中運行,以建模 程式指令與虛擬機硬體的互動。 儘管本發明圖示之實施例已於此詳細敘述並參照隨附 圖式,可瞭解本發明並不局限於先前之實施例,以及在 不脫離本發明之範疇與精神的情況下,熟習此項技藝者 可作出本發明之各種改變與改良,且本發明之範疇與精 神係由以下申請專利範圍來決定。 【圖式簡單說明】 第1圖圖示根據本發明之一個實施例之資料處理設 備; ° 第2圖圖示根據本發明之―個實施例之用於實行條件 式選擇指令之處理電路系統; 、 第3圖圖示根據本發明之一個實施例之再利用於實a 條件式選擇指令之運算電路系統,該運算電路系統在: 24 201216154 料處理設備中; 第4圖圖示根據本 令與範例狀態旗標; 個貫施例之條件式選擇指 第5圖圖示如何利用條件式 指令實行功能之實例; $释知-模擬舊有條件式 第6圖圖示流箱窗 圖’該流程圖說明根據本發明 — 實施例之方法; 之個 ;以及 意圖。 第7圖圖示條件式里 取1于式選擇指令編碼之實例 第8圖為說明太枯 乃不技術之虛擬機實施的示 【主要元件符號說明】 10 資料處理設備 20 資料儲存所 30 管線 32 讀取單元 X31 暫存器 34 指令解碼器 36 處理單元 40 暫存器組 50 多工器 60 評估單元 70 XOR閘 75 加法器 80 AND閘 500 應用程式 510 虛擬機程式 520 主操作系統 530 主處理器 25

Claims (1)

  1. 201216154 七、申請專利範圍: 1. 一種資料處理設備,包含·· 資料儲存所,包含用於儲存資料元素之複數個儲存 疋常, 一指令解碼器’經配置以解碼至少—個條件式選奸 令’該至少-個條件式選擇指令指定—主要來源儲存元 :二次要來源儲存元素、—條件、以及在儲存於該次 要來源儲存7C素的一資料元素中實行之一操作. 處理器’經配置以藉由該指令解碼器控 仃資料處理操作,其中: 貝 該資料處理器係回應該經解碼的至少—個 選擇指令與具有一預先決定結果的該條件以在來, 該次要來源儲存元素之該資料元素中實行該操作 形成一合成資料元素;以及 1 該資料處理器係回應該經解碼的至少—個條 選擇指令與不具有一預先決定結果的該條件,以從: 主要儲存元素中的該資料元素形成該合成資該 .如請求項1所述之資料處理設備,其中該指令更指定J :的資料元素,且該資料處理器係回應該至少;二 X中選擇指令,以儲存該合成資料元素於該目的資料元素 3’如請求項2所述之資料處理設備,其中該目的儲 包含該等主要或次要來源儲存元素之一者。 … 26 201216154 4. 如:求項i所述之資料處理設備,其中該資料處 回應該經解碼的至少一個條件式選擇指令與不具有^ 預先決定結果之該條件,以在該次要來源储存元素中之 該資料7G素中實行該操作,並從該主要來源儲存元素中 之該k料元素形成該合成資料元素。 5. 如請求項i所述之資料處理設備’其中該至少_個條件 式選擇指令包含:-增加條件式選擇指令,且該操作包 含以下步驟:增加來自該次要來源儲存元素之該資料元 素。 X , 6. 如請求項i所述之資料處理設備,其中該至少_個條件 式選擇指令包含:-反向條件式選擇指令,且該操作包 含以下步驟:€輯地反向纟自該次要來源儲存元素之該 資料元素,以產生一逐位元邏輯反向的儲存元素值。 7. 如請求g i所述之資料處理設備,其中該至少_個條件 式選擇指令包含:一反向增加條件式選擇指令,且該操 作包含以下步驟:邏輯地反向並增加來自該次要來源儲 存元素之該資料元素,以產生該資料元素之一運算否 定。 8. 如請求項!所述之資料處理設備,其中該儲存元素資料 儲存所包含:映射至一零值之—儲存元素名稱。 9. 如請求項i所述之資料處理設備,其中該等/存元素包 含暫存器,且該儲存元素資料儲存所包含一暫存器組。 1〇·如請求項i所述之資料處理設備,其中該等儲存元素包 含記憶體位置’且該儲存元素資料儲存所包含一記憶 27 201216154
    η·如請求項1所述之資料處理設備 ^ \ I · °亥才日令解碼器經配置為回麻节你彼斗、 乃口愿该條件式選擇指令,以輸 出一增加控制信號;以及 該處理器經配置以處理該篝 处忑等經解碼的條件式選擇指 令,該等經解碼的條件式選擇指令包含: 加法器,經配置以接收央自q Α π 按收來自該次要儲存元素之值 與一進位輸入信號; 一多工器,經配置以接收央白 〇 按叹采自該主要儲存元素之信 號與來自該加法器之一輪屮夕缺 锏之化唬,該多工器之一選 擇信號包含該條件,且具有該預杏 八另邊頂无決定結果的該條件 觸發該多工器選擇該加法器之該輸出;其中 回應已設定該增加㈣錢,將該進位輸人信號設 定成卜且該加法器增加來自該至少—個來源儲存元 素的一接收值。 12.如請求項1所述之資料處理設備,其中 該指令解碼H經配置為回應該條件式選擇指令,以賴 出一反向控制信號;以及 該處理ϋ㈣置以處理料纟轉碼的條件式選擇指 令,該等經解碼的條件式選擇指令包含: -加法器’經配置A :回應已設定該反向控制信 號,以接收來自該次要儲存元素通過一反向器之值, 並回應未設定該反向控制信號,以接收來自該次要儲 存元素未通過該反向器之值; 28 201216154 :多工器’經配置以接收來自該主要來源儲存元素 之域與來自該加法器之一輸出之信號,該多工器之 一選擇信號包含該條件,且具有該預先決定結果的該 條件觸發該多工器選.擇該加法器之該輸出。 人 13_如請求項u所述之資料處理設備, 其中該指令解碼器經配置為:回應該條件式選擇指 令,以輸出一增加控制信號與一反向控制信號;曰 、回應已設定該增加控制信號,將該進位輸入信號設定 成卜且回應已設定該反向信號’該加法器増加從該次 要來源儲存元素所接收的該反向值。 14.如:求項i所述之資料處理設備,其中該主要來源儲存 疋,、與該次要來源儲存元素為一相同儲存元素。 15’如請求項1所述之資料處理設備’其中該條件之—結果 係從回應至少一個先前資料處理操作而設定之運算邏 輯旗標所決定。. 如求項15所述之資料處理| 甘士斗 _ 貝针處理叹備’其中該至少一個先 月】貝料處理操作包含以下步 卜,驟.比較至少一個該等來源 儲存疋素中之一資料元素與另一值。 71:求,16所述之資料處理設備,其中該至少-個先 二料處理操作包含以下步驟:比較該主要來源儲存元 :、:之-資料元素與該次要來源儲存元素中之一資料 疋素。 Si:'15所述之資料處理設備’其中該條件包含: ;等於小於、大於、大於或等於、小於或等於' 29 201216154 為零、以及為負之至少一者。 青求項15所述之資料處理設 旗標包含負結果旗標'一零.果旗广運异邏輯 *標1及-帶正負*溢位旗;二果至旗:一者一進位翰出 2°::::=述之資料處理設備,其中該二預先 Q果包含已滿足該條件。 所述之資料處理設備’該條件式選 :寬:該指示器指示該等來源與目的錯存元素的 2=求項1所述之資料處理設備,該資料處理設備包含 口應運算指令,用於竇并 統,盆中兮至,卜1 法。減法操作的運算電路系 八T該至J 一些回應該 次要來源儲存元素之該資料 ^ μ ^ , 70素中實行该操作的電路 系統包含該運算電路系統。 23, 一種資料處理設備之方法,包含以下步驟: 擇t 個㈣式選擇指令,該至少—個條件式選 主要來源儲存元素、-次要來源儲存元 及在儲存㈣次要來㈣存元素的一資 料70素之一操作; 解碼該至少一個所垃dA_ U & 所接收的條件式選擇指令; 決定該條件是否具有—預先決定結果; 若該條件具有該預先決定結果’選擇該次要來源儲存 =素自簡元素之—資料素中實 订㈣作’以步成—合成資料元素;以及 30 201216154 若該條件不具有該預先決定 存元素中之該資料元素選擇該主要來源储 如請求項23所述之方法 ^成資科凡素。 儲存誃人成咨社 L 3實行-附加步驟: 存-去素在—目的儲存元素中,該目的儲 25如^ 〃冑條件式選擇指令指定。 25·如5月未項23所述之方法,i 中之兮資料… 要來源儲存元素 甲之該資“素中實行該操作 否且古<便貫仃決定該條件是 否八有該預先決定結果之該步驟。 指:23所述之方法’其中該至少-個條件式選擇 二二:一增加條件式選擇指令,且該操作包含以下 ”,如請求項23所…\ “素之該資料元素 項23所述之方法,其中該至少一個條件式選擇 二含:一反向條件式選擇指令,且該操作包含以下 .、邏輯地反向來自該次要來源健存元素之該資料元 、^產生一逐位70邏輯反向的儲存元素值。 :求項23所述之方法,其中該至少一個條件式選擇 ^包含:-反向增加條件式選擇指令,且該操作包含 从下步驟:邏輯地反向並增加來自該次要來源健存元素 2二該資料元f,以產生該資料元素之一運算否定。 9.—種儲存—電腦程式之電腦程式產品,包含:-條件式 王選擇指令,當運行在-資料處理器上,以控制該資料處 理器實行如請求項23所述之方法之步料,可操作該 條件式選擇指令。 Λ 種用於處理資料之構件,包含: 31 201216154 中儲存以料構件1㈣存㈣元素在儲存元素 令,=至令㈣構件’用於解碼至少—個條件式選擇指 條件式選擇指令指定-主要來源储存元 要來源健存元素的-資料元素之一操作㈣存於該次 料1==件’用巧㈣㈣料料構件控制的資 枓處理操作,其中: B :::構件係回應該經解碼的至少—個條件式選 曰7與具有-預先決定結果的該條件,以在該次要 來源儲存元素中之該資料 -合成資料元素;m f仃·作,以形成 31. =構件係回應該經解碼的至少—個條件式選 “不具有一預先決定結果的該條件,以從該主 要儲存元素中的該資料元素形成該合成資料元素。 一種虛擬機,藉由—電㈣切行在1料處理設備上 ;供二虛擬機根據如請求項1所述之資料處理設備提 供一指令運行環境。 32
TW100135780A 2010-10-12 2011-10-03 用於資料元素的條件式選擇的設備、方法、電腦程式產品、及虛擬機 TWI536261B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1017176.7A GB2484654B (en) 2010-10-12 2010-10-12 Conditional selection of data elements

Publications (2)

Publication Number Publication Date
TW201216154A true TW201216154A (en) 2012-04-16
TWI536261B TWI536261B (zh) 2016-06-01

Family

ID=43304419

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100135780A TWI536261B (zh) 2010-10-12 2011-10-03 用於資料元素的條件式選擇的設備、方法、電腦程式產品、及虛擬機

Country Status (10)

Country Link
US (2) US9753724B2 (zh)
EP (1) EP2628073B1 (zh)
JP (1) JP5732139B2 (zh)
KR (1) KR101802740B1 (zh)
CN (1) CN103282876B (zh)
GB (1) GB2484654B (zh)
IL (1) IL225614A (zh)
MY (1) MY164515A (zh)
TW (1) TWI536261B (zh)
WO (1) WO2012049474A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2523823B (en) * 2014-03-07 2021-06-16 Advanced Risc Mach Ltd Data processing apparatus and method for processing vector operands
GB2564853B (en) * 2017-07-20 2021-09-08 Advanced Risc Mach Ltd Vector interleaving in a data processing apparatus

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2228597A (en) * 1989-02-27 1990-08-29 Ibm Data processor with conditional instructions
JPH04363722A (ja) * 1991-05-17 1992-12-16 Toshiba Corp 情報処理装置
US5805913A (en) * 1993-11-30 1998-09-08 Texas Instruments Incorporated Arithmetic logic unit with conditional register source selection
US5537560A (en) * 1994-03-01 1996-07-16 Intel Corporation Method and apparatus for conditionally generating a microinstruction that selects one of two values based upon control states of a microprocessor
US20020002666A1 (en) * 1998-10-12 2002-01-03 Carole Dulong Conditional operand selection using mask operations
JP2001022576A (ja) 1999-07-12 2001-01-26 Hitachi Ltd データ処理装置
GB2352308B (en) * 1999-07-21 2004-06-30 Element 14 Ltd Accessing a test condition
CA2481448A1 (en) 2002-04-05 2003-10-16 Optimization Methods Deutschland Gmbh Method and device for optimizing the order of assignment of a number of supplies to a number of demanders
US7647480B2 (en) * 2004-07-27 2010-01-12 Arm Limited Handling of conditional instructions in a data processing apparatus
JP4891252B2 (ja) 2004-11-10 2012-03-07 エヌヴィディア コーポレイション 汎用乗算加算機能ユニット
US7428566B2 (en) * 2004-11-10 2008-09-23 Nvidia Corporation Multipurpose functional unit with multiply-add and format conversion pipeline
US7624256B2 (en) * 2005-04-14 2009-11-24 Qualcomm Incorporated System and method wherein conditional instructions unconditionally provide output
JP2009163624A (ja) 2008-01-09 2009-07-23 Nec Electronics Corp プロセッサ装置及び条件分岐処理方法
JP4962476B2 (ja) * 2008-11-28 2012-06-27 ソニー株式会社 算術復号装置
GB2480285A (en) 2010-05-11 2011-11-16 Advanced Risc Mach Ltd Conditional compare instruction which sets a condition code when it is not executed

Also Published As

Publication number Publication date
MY164515A (en) 2017-12-29
JP5732139B2 (ja) 2015-06-10
IL225614A (en) 2017-02-28
KR101802740B1 (ko) 2017-12-28
EP2628073B1 (en) 2017-05-03
US9983872B2 (en) 2018-05-29
CN103282876B (zh) 2016-02-03
GB2484654B (en) 2013-10-09
IL225614A0 (en) 2013-06-27
WO2012049474A1 (en) 2012-04-19
CN103282876A (zh) 2013-09-04
KR20130101052A (ko) 2013-09-12
JP2013539882A (ja) 2013-10-28
TWI536261B (zh) 2016-06-01
GB201017176D0 (en) 2010-11-24
US9753724B2 (en) 2017-09-05
GB2484654A (en) 2012-04-25
US20170329603A1 (en) 2017-11-16
US20120089817A1 (en) 2012-04-12
EP2628073A1 (en) 2013-08-21

Similar Documents

Publication Publication Date Title
US11663006B2 (en) Hardware apparatuses and methods to switch shadow stack pointers
JP6051458B2 (ja) 複数のハッシュ動作を効率的に実行する方法および装置
TW202334810A (zh) 可中斷及可重啟矩陣乘法指令、處理器、方法和系統
TW201203103A (en) Operand size control
KR20170097612A (ko) 비순차적 하드웨어 소프트웨어 공동 설계된 프로세서에서 스택 동기화 명령어를 갖는 술어 값의 스택을 구현하고 유지하기 위한 방법 및 장치
US7305567B1 (en) Decoupled architecture for data ciphering operations
KR20150066573A (ko) 멀티스레딩 컴퓨터 시스템에서의 고성능 및 공정성을 제공하기 위한 메커니즘
US9588845B2 (en) Processor that recovers from excessive approximate computing error
JP2010097593A (ja) 命令ブロック・シーケンサ・ロジックを有するマルチ実行ユニットによる命令実行のための回路構成、集積回路デバイス、プログラム、及び方法
TWI641993B (zh) 用以反轉與置換在一遮罩暫存器內的位元之設備及方法(二)
TW200813823A (en) Block-based branch target address cache
TW201135589A (en) Rotate instructions that complete execution without reading carry flag
US10579378B2 (en) Instructions for manipulating a multi-bit predicate register for predicating instruction sequences
TW201216154A (en) Conditional selection of data elements
KR101898791B1 (ko) 멀티 스트랜드 비순차 프로세서에서 회수를 위한 명령어들을 식별하는 명령어 및 로직
Janakiraman et al. Indicator-based lightweight steganography on 32-bit RISC architectures for IoT security
JPS63253433A (ja) 演算処理装置
US20190187990A1 (en) System and method for a lightweight fencing operation
JP2014182811A (ja) 短整数の乗算の数を減らすためのシステム、装置、および方法
US20170371701A1 (en) Apparatuses, methods, and systems for granular and adaptive hardware transactional synchronization
CN109683959B (zh) 处理器的指令执行方法及其处理器
TW589574B (en) Use of a future file for data address calculations in a pipelined processor
KR101635856B1 (ko) 데이터 요소에 있는 비트들의 제로화를 위한 시스템, 장치, 및 방법
US12001842B2 (en) Hardware apparatuses and methods to switch shadow stack pointers
US20180046459A1 (en) Data processing