TW386193B - Circuits, system, and methods for processing multiple data streams - Google Patents

Circuits, system, and methods for processing multiple data streams Download PDF

Info

Publication number
TW386193B
TW386193B TW087101594A TW87101594A TW386193B TW 386193 B TW386193 B TW 386193B TW 087101594 A TW087101594 A TW 087101594A TW 87101594 A TW87101594 A TW 87101594A TW 386193 B TW386193 B TW 386193B
Authority
TW
Taiwan
Prior art keywords
register
memory
data
patent application
bit
Prior art date
Application number
TW087101594A
Other languages
English (en)
Inventor
Gregory Allen North
Douglas D Gephardt
James D Barnette
James D Austin
Scott Thomas Haban
Original Assignee
Cirrus Logic Inc
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 Cirrus Logic Inc filed Critical Cirrus Logic Inc
Application granted granted Critical
Publication of TW386193B publication Critical patent/TW386193B/zh

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/275Musical interface to a personal computer PCI bus, "peripheral component interconnect bus"

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Image Processing (AREA)
  • Bus Control (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

B7 B7 經濟部中央標準局貝工消资合作社印«. 五、發明説明(1 ) 發明背景 發明領域 本發明係關於-數位資料處理,更特別地是關於用以處理 多個資料流的電路、系統和方法。 相關技術之描敍 _____ - 處理音頻資訊的能力在個人電腦(PC)的環境下已變得愈來 愈重要,除此之外’音頻在許以媒體的顧中,例如遊戲 和電訊方面的應用亦是重要的。I頻的減基本上是可以在 大多數的傳統PC上取得的,不管是以一附加的音效卡戒是本 身之母板所提供的檩準特徵皆然》事實上,PC的使用者已漸 漸地期望不只擁有音頻的功能,亦需要高品質的聲音能力。 雖然PC的製造者對於其顧客提升音頻能力的需求十分敏感 ,但他們必須知道他們所製造的產品之價格範圍很緊,為能 平衡這些競♦條件,系統設計者必須努力在減少元件數目時 僅可能地提供很多音頻功能,以執行所給定的功能.。由功能 性的觀點來看,一本行所知的數位式音頻處理次系統應权供 如下的各種功能,如波形表合成、3D音效和取樣率轉換。此 外亦必須考慮聲音爆發器的相容性和與未來之不依賴聲音爆 發器(blaster)技術的系統的相容性,此外,這類的次系統必須 能經由目前已廣泛使用的具有較高頻寬的1>(::1匯流排而整合於 一PC系統母板一 β由成本和效率的觀點來看,單一晶片的解 決方式應是最好的。此外,下一世代的遊戲將要求同時處理 音頻^料流’因而任何系統皆應注意遊戲設計者的多流式 (multiple streaming)需求。 -4- 本紙浪尺度逋用中國國家橾率(CNS > A4規格(210X297公漦) ------;-Iύ------ir------J ( c (婧先g讀背面之注^項存|4寫本夷) A7 B7
五、發明説明(2 ) 因此,-個能同時處理多個數位音類資訊流的音頻處理器 的需姜已大大提异了’除此之外,尚需要—種能提供波形表 合成操作(包括,般的表合成和如反二e•合 音之語音頻道效果ϋ頻處埋器1外,也需要可提供30音 D。%、音頻:碼:處:功能乏裝置。尚需求能說明如 改變未來系統的結構之顧素的解衫式,例如,需要一能 ㈣或㈣外接音頻處 與一 CODEC介面之裝置,匕也要求這_置與—pci匯流排介面 發明概要 根據本發明之原理的一實施例,所提供、立 系統包括一用以同時處理多音頻資科流訊處3 記憶體藉由一第一匯流排與該流處理器耦合,它用以儲存用 以控制處理系統的指令,一資料記憶體經—第二匯流排與該 流處理器耦合。尚包括一直接記憶體存取電路以控制對該程 式和資料記憶體中之選定之一的直接記憶體存取。 經濟部中央標準局負工消费合作社印裝 --------I裝-- (请先《请背面之注^ϊ事項鼻^4本頁 订 所有實施本發明之原理的系統、電路和方法皆提供較習知 前案實質·的優點。除此之外,雖然本發明並不限於此原理, 但本原理可供建構和操作音頻加速器。有關該音頻加速器之 設計和操作,這些原理可允許處理多種格式的多資料流,此 外’這類加速器在需要波形表合滅、3D音頻處理和直接聲音 的應用上是有利的。再者,這些原理可允許一加速器有效地 —* _ 處理如Dolby AC/3的音頻解碼的音頻應用,此外,這些原理 本紙張尺度適用中國國家樣準(CNS ) A4规格(2丨0X297公釐) A7 _B7五、發明説明(3 ) 經濟部中央橾準局貝工消费合作社印製 可允許一音頻加速器有效地與一PCI匯流排和Codec或音頻母 板交互作用。 圖式之簡述 為更了解本發明及其優點,現參考下列詳細說明和參考附 圖說明之,其中: ______________________ ______________________ 圖1所示為根據本發明之流處理器100之圖示; 圖2A所示為根據本發明之包括流處理器101之數位音頻資 料加速器控制器之方塊圖; 圖2B所示係說明前景和背景區福的選擇操作週波; 周2C所示為在根據本發明之圖·2Α的系統上執行一典型的軟 體操作圖; 圖2D係例示一根據本發明之用以執行軟體工作的通用方法 f 圖2E所示為以加速器200執行圖2C之工作之示意圖; 圖2F所示為一適合加速器200使用其中的第一資訊處理系統. 示意圖; 圖2G所示為一適合加速器200使用其中的第二資訊處理系 統示意圖; 圖3A所示為Mop、aOp和ALUop之指令格式圖; 圖3B所示一例示的並行擴展的載入/儲存和ALUop指令格式 之示意圖; 圖3C所示為一 wideOp指令格式·之示意圖·; 圖3D所示為用於一雙重包封的ALUop指令格式之格式示意 一 -團, -6- 本紙張尺度通用中囷國家標準(CNS ) Α4規格(210Χ297公釐〉 (請先聞讀背面之注言 ΛΙ- 華項再 本頁) -裝·
*1T —線 1!»-> 經濟部中央橾率局員工消费合作社印裝 A7 _ B7 五、發明说明(4 ) ~ 圖4所示為16位元的ALU104之示意圖; 圖5所示為一元素/係數位址產生單元102之較詳細示意圖; 囷6A所示為取樣AGU103之方塊圖; 圖6B所示為請求器陣列之組織示意囷.; 圖6C所示為該請求器之操作金袁凰」— ___________________________ 圖7所示為一例示的DMA頻道之場示意囷; 圖8所示為在取樣位址產生單元的取樣記憶體位址(rsa)和取 樣記憶體位址增量(rsi)暫存器之場示意圖; 圖9所示為一DMA取樣雙重字元位址串的場示意圖;, 圖10所示為一模组緩衝器和不同的指示器之示意圖; 圖11所示為雙乘法累進單元105之示意圖; 圖12A所示為DMA控制器109之結構示意囷; 圖12B所示為DMA引擎209的位址儲存功能之示意圖; 圖13A所示為當主電腦是來源和加速器200是一主電腦啟始 的DMA轉換内的目的地時,在該主來源位址暫存器(HSAR)内 之場的示意圖; ,圖13B所示為當主電腦是目的地和加速器200是一主電腦啟 始的DMA轉換内的目的地時,在該主來源位址暫存器(HSAR) 内之場的示意圖; 圖13C所示為該主電腦是目的地和該加速器200是一DMA啟 始的轉換内之來源時,在主目的地暫存器(HDAR)内之場的示 意圖; - 圖13D所示為當該主電腦是來源和加速器200是一DMA啟始 的羼?奐期間之目的地時,在該主目的地暫存器(HDAR)内之場 本纸張尺度適用中國國家標準(CNS ) Α4規格(2丨0Χ297公釐) (請先閱讀背面之注t事項再f本頁 裝. 訂 A7 B7 五、發明説明(5 ) ^ 的示意圖;. 圖14所示為用於該主DMA暫存器(HDMR)的格式圖; 圖15所示為用於該主DMA控制暫存器(HDCR)之場的示意圖 9 § 16所示為DMA狀態暫存器mMSR)之場;_______________________________ 圖17A所示為一位址串至元素RAM203之示意圖; 圖17B所示為一目的地位址字元之示意圖; 圖17C所示為一主來源位元组位址之示意圖; 圖17D所示為若來源是在一DSP記憶體中時,來源位元組位 址字元之示意圖; · 圖ΠΕ所示為當該主電腦表目的地時,目的崦拉址字元之示 意圖; 圖17F所赤為當目的地在一加違器200記憶體中時,目的地. 位社字元之示意圖;t 圖17G所示為定義記憶體中要被存取的下一頁之下一頁位 址字元之示意圖; 圖17H所示為下一頁控制字元的示意圖; » 圖171所示為具體的位元組位址迴路開始之位址字元的示意 rs * 園, 圖17J所示為在迴路開始以後的頁之具體的位元組位址之示 意圖; 圖17K所示為散亂/集中頁表之位址示意楣; 圖18所示為一說明當最佳模式被抑能時由任意迴路點所導 致題之示意圖; , 本紙張尺度適用中國國家標準(CNS ) A4说格(210X297公釐) (請先Μ讀背面之注t事項再 — 1-- 本頁) 订 經濟部中央標準局負工消費合作社印装 A7 B7五、發明説明(6 ) 經濟部中央標準局貝工消费合作社印製 圖19A所示為在最佳的16-d字元模式下在和圖1 &所_示的相同 迴路取’樣流之回播(playback)示意圖,其中該最小的雙重字元 被設定為15 ; 圖19B所示為在最小的雙重字元計數已被設定為14時,圖18 之相同迴路取樣流之回播示责薗; _______________ 圖20所示為一包含一跨越二個完全的記憶頁之迴路區間的 資料取樣,以說明散亂/集中DMA能力之操作方式; 圖21A係例示在32位元的記憶體之間的代表性資料傳送之 7F意圖; - 圖21B所示為在40位元記憶體之間的代表性資料傳送之示意 TSH ·團, 圖22A所示為一 16位元之立體聲以一小端區(endian)之格式 、且無須轉換的方式在32位元記憶體之間傳送時之狀態示意 圖, 圖22B所示為在32位元的記憶體之間傳送之示意圖,其中16 位元立體聲之大端區(endian)被轉換至小端區.(endian); 圖22C所示為在32位元記憶體之間傳送之示意圖,其中16位 元的單音之小端區(endian)被轉換至16位元立體聲之小端區 (endian)中; 圖22D所示為在32位元記憶體之間傳送之示意圖,其中 位元的單音之大端區被轉換為16位元立體聲之小端區; 圖22E所示為在32位元記憶體之間的傳送示意圖,其中被約 定的8位元立體聲被轉換為被約定的16位元立體聲之小端區中 -9- 本紙張尺度適用中國國家標準(CNS ) Α4規格(210X297公釐) 請先閏讀背面之注f事項再本 -裝_ 页) 訂 .線 ί/ A7 B7 五、發明说明(7 圖2?F所示為一由未約定之8位元的立體聲轉換為約定的16 位元立體聲之轉換示意圖; 圖22G所示為在32位元記憶體之間的典型轉換示意圖,其 中約定的8位元單音被轉換為約定的16位元立體音; 圖勉趣接示音罔,其中长 約定的8位元單音被轉換為約定的16位元立號音; 圖221所示為用以實施囪21A和21B以及囷22A-22H所示的資 料操作之電路示意圖; 圖23所示為加速器200之記憶空間之示意圖; 圖24所示為加速器200之上平面視圖、其說明一封包方式 接腳拉出方式); 圖25A所示為初級串接之輸入和輸出埠之圖式; 圖25B所示為一辅助輸出埠之圖式; 圖25C所示為輔助輸入埠之圖式; 圖25D所示為強調對該串接埠207的時序輸入和輸出之較詳 細的示意圖; 圖26A所示之圖式係說明當加速器2〇〇作為一音頻母板上之 PCI加速器時之結構示意圖; 圖26B所示為用以說明在圖26A之結構中於Codec和加速器 200之間的時序和信號之基本交換的選定時序和信號之圖式·, 圖27所示為在圖26A中所說明的結構選擇之擴充解釋之示 意圖; :. . $ 士8所示為說明圖27所示的擴充結構之基本操作的時序圖 -10- 本纸張尺度適用中國國家標準
A7 B7 五、發明説明(8 ) 囷29所示為一 AC97 Codec2800與加速器200之互連的示意 圖’其中該加速器200係驅動多個DAC ; 圖30所示為在加速器200驅動多個DAC的情況下該加速器 200之可能的另一個結構示意圖; 接埠-主揸丄之示意眉;_________________ 圖32所示為一原理上的串接埠主控暫存器2(SERMC2)之示 意-; 圖33所示為用於該串接埠結構暫存器(SERCi)之位元場之示 意圖;. ._· 圖34所示為一串接埠結構暫存器2(SERC2)之示意圖; 圖35所示為用於串接埠結構暫存器3(SERC3)之位元場之示 意圖; 圖36A所示為用於串接埠結構暫存器4(SERC4)之位元場之 示意圖; 圖36B所示為串接埠結構暫存器5(SERC5)之示意圖; 圖3 7所示為當EEPROM串接時序(EECLK)被交換至 EEPROM3800時,所使用的一簡單的雙接腳連接之示意圖 圖38所示為一結構暫存器(CFGI)之示意圖,該暫存^勺本 用於一外部的EEPROM次系統(當與之連接時)之主要軟^ & 經濟部中央標準局ί工消费合作社印製 礎的操作之控制位元; S & 圖39所示為在和選擇性EEPROM次系統交換之期間, 和:貝料之間的最小時序關係圖;··. . _ 圖40所示為對該選擇的EEPROM之讀取存取仵列士 _ •— 』不意圖 11 張尺度適用中國®家榡準(CNS ) A4規格(210X297公釐)
=41所不為結構暫存器(CFGI)之示意圖,該暫存器包含用 :外部的EEPROM (當與之連接時)之主要軟體基礎的操作 疋控制位元; 圖42所'^為時序控制暫存器l(CLKCRl)之示意圖; 遮序暫在器 2(C:LK:CR2) ;________ 囷44所不為鎖相迴路乘法暫存器(PLLM)之示意圖; 圖45所示為特徵報告暫存器(FRR)之 TF意囷: 圖46所不為結構負載暫存器l(CLFRl)之示意圖; 囷47所:為結構負載暫存器2(€LFR2)之示意圖; 圖48所示為加法器200之中斷模式之示意圖; 圓49所不為主中斷狀態(HISR)暫存器之示意圖; 圖50所不為主信號(iiSRO)暫存器之示意圖; 圖51所不為主中斷控制(HICR)暫存器之示意圖; 圖所不用於加速器200、可允許即時監視键内部系統和裝 置功能指示H之賴模型次系統之方塊圖; 圖53所737為功能控制暫存器(PFMC)之示意圖; 圖54八所示為功能計數Η直暫存器(PFCV丨)之示意圖; 圖5化所示為功能計數2值暫存器(PFCV2)之示意圖; 圖55所不為流處理器控制暫存器(SPCR)之位元場的示意圖 經濟部中央標準局貝工消费合作社印裂 圖56所不為用於除錯暫存器索(DREG)暫存器之位元場的示 意圖; ♦ ΐ?7所示為群組暫存器(FCR1)之位元場的示意圖; 圖58所示為用以控制DMA流請求器陣列狀態寫入埠(DSWP) -12· 本紙張尺度適用中國國家榡準(CNS ) A4規格(210X297公釐) A7 ___ B7五、發明説明(1〇 ) ~ 經濟部中央樣準局貝工消费合作社印装 之暫存器; 圖59所示為流處理器時序狀態暫存器(SPCS)之示意圖; 圖60所示為一流處理器DMA狀態暫存器(SDSR)之示意圖; 圖61所示為策略(trap)寫入埠暫存器(TWPR)之示意圖; 16¾示為堆疊指示器窝入暫存器(SPwR)乏而章岡:__ 圖63所示為用於圖框定時器暫存器(FRmt)之位元場之示意 S3 ·國, 圖64A所示為圖框時間的目前計數(frcc)暫存器之示意圖; 圖64B所示為圖框計時器(FRS(3)暫存器之示意圖; 圖65所示為主介面程式模型之示意圖-; 圖66A所示為串接埠後門取樣指示器(SERBSP)之圖式; 圖66B所示為串接埠後門狀態(SERBST)暫存器之圖式; 圖66C所示為串接埠後門指令暫存器(SERBCM)之示意圖; 圖66D所示為串接埠後門位址暫存器(SERBAD)之示意圖; 圖66E所示為串接埠後門結構暫存器(SERBCF)之圖式; 圖66F所示為串接埠後門寫入埠(SERBWP)暫存器之示意圖; 圖66G所示為串接埠後門讀取埠(SERBRP)暫存器之示意圖 > 圖67八所示為八097控制暫存器(八0(:1^)之示意圖; 圖67B所示為AC97狀態暫存器(ACSTS)之示意圖; 圖67C所示為AC97輸出槽有效暫存器(ACOSV)之示意圖; 圖67D所示為AC97指令位址暫存·器(ACCAD)之圖式; 圖67E所示為AC97指令資料暫存器(ACCDA)之圖式; 所示為AC97輸入槽有效暫存器(ACISV)之圖式; -13- 本纸張尺度適用中國國家標準(CNS ) Α4規格(2丨0X297公釐) (請先Μ讀背面之注t事項再:本頁) ^" 太 訂 ύ. 五、發明説明(11 A7 B7 囷67G所示為AC97狀態位址暫存器(ACSAD)之圖式; 圖67H所示為AC97狀態資料暫存器(ACSDA)之圖式; 圖68A所示為MIDI輸入/輸出埠6900之示意圖; 囷68B所示為MIDI控制暫存器(MIDCR)之示意圖; —盟主MIDIjIUI暫在器示意要 圖68D所示為SPMIDI狀態暫存器乏示意圖; 〜 圖68E所示為MIDI篇入狀態(MIDWP)暫存器之圖式; 圖6吓所示為MIDI讀取狀態(MIDRP)暫存器之示意圖. 圖69A所示為壤戲搖桿投票/觸發暫存器(JSPT)之圖式· 圖69B所示為遊戲搖桿控制暫存器(JSCTL)之圖式; 圖69C所示為遊戲搖桿座標暫存器丨q^c】)之圖式; 圖69D所示為遊戲搖桿摩標暫存器2(JSPT2)之圖式; 圖69E所示為遊戲搖桿GPIO暫存器(jsi0)之圖式; 、圖70A所示為實施本發明之原理的同步器電路71之電子示貪圖, 70B所示為說明圖70A所示的同步化電路之操作的時序圖
C (請先«鲭背面之注會事項再本頁) :裝 訂 圖 經濟部中央梂準局負工消费合作社印製 圖70C所示為供在加法器200和PCI匯流之間交換資料和使 來自該PCI匯流排的位址交換到加法器2〇〇上之位址和資料管 道之示意圖; 圖70D係說明流經圖70C之電路的資料和位址流之基本的時 序圖; . - 圖71A所示為一先入先出暫存器系統之示意圖; 圖71B所示為圖71A所示的指示器環之一選定部份的啟始部 -14- 本紙伕尺度適用中國國家標準(CNS )八4说格(210X297公釐) 五、發明説明(ί2 份 A7 B7 圖71C係顯示當產生-接近空白信號時,來源與目 器重疊广 圖71D係顯示當產生-接近完全的信號時,來源與 指示重疊; 經濟部中央樣率局貝工消费合作社印*. 圖71Ε所示為目的地指示器環和產生該近乎空白的信號之^ 化之一可能實施例之示意圖; ’ Τ 圖71F所示為一用於來源指示器環之可能組織之一示意 較佳實施例之描沭 _ 本發明之原理和其優點可由參考圖式1_71之例示實施例而 有最佳的了解’其中類似之符號表示類似的部份。 圖1所示為一實施本發明之原理的流處理器(核心)丨〇〇之較 詳細的功能方塊圖"該流處理器100的初級功能組件包括一暫 存器摇101、一元素/係數位址產生單元(AGU)102 ' —取樣位 址產生單元(ALU)104、一具有一40位元加法器1〇5的雙重2〇_ 乘16位元之乘法累進單元(MAC)和一40位元的屏障位移器106 ,這些次系統將於下文較詳細討論之。 在本例示實施例中,暫存器檔1〇1包含一丨6個入口的暫存器 檔,該暫存器可以一個別的16位元暫存器(r〇、rl、 F)或是 32位元暫存器對(rlO、r32、r54、r76 ' r98、rBA、rDC、rFE) 的方式存取。該流處理器1〇〇尚包括多個額外的指令和資料暫 存器’此兩者將於下文做進一步的討論。本質上在該流處理 器$_的所有可利用的資料暫存器的簡述已說明於表1中,和該 流處理器的類似描述已說明於表2中。 {請先Μ讀背面之注t事項再'本頁) •裝· 訂 -15- 本紙張尺度適用中國国家榡準(CNS ) ( 21GX297公釐 A7 B7 五、發明説明(13 ) - 流處理器100是一個可操作以同時解碼和執行兩個或三個指 不之非常長的指示字元(VLIW)機器。表3已簡單的指定和描 述這些指示場每一個,本實施例的指示場編碼如表4所示。指 示管路(pipeline)最好是一具有可見的乘法累進單元之4級管路 ’最—發產^_1它使用1値孰行任铒單二 四個指示可以被管路在一起,以提供每週波一指示的有效輸 出。表5所示為本例示實施例中可得的不同信號處理操作之管 路示意圖,在該指示組中所示的暫存器上之情況(正交性)亦 同樣地顯示於表6中。 參考圖2A所示’該圖係顯示根據本發明之原理的直接存取 (DMA)的信號處理加速器200,.在本例示實施例中,信號處理 加速器200被製成在一單一基質上的積體電路(晶片)元件,但 疋本發明之原理並不限於此。例如,習於本行技藝之士將了 解加速器200可以做成在一積體的硬性結構上的多晶片模組, 亦應注意系統200只是流處理器的一可能的應用而已。 DMA加速器200實施一流處理器核心1 〇〇(將於下文較詳細地 敘述)和多個記憶體次系統。這些記憶體次系統包括一係數唯 讀記憶體(ROM)201、一程式記憶體202、元素隨機存取記憶 體(RAM)203、和一取樣RAM204。一策略單元205被連接到該 流處理器核心100和程式記憶體202上,它能監視程式位址由 程式記憶體202鳇匯流排211而流至流處理器核心100上》 本說明書中採用下列名詞和定:義:”雙重字元’’(dword)最好 是用以定義PCI和DMA匯流排寬以及流處理器100之字元大小 的3*2^元資料字元;’’字元”表示16位元之資料和’’位元組”指 -16 - 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) (請先《讀背面之注t事項再Wr本頁 訂 經濟部中央樣準局貝工消费合作社印笨 五、發明説明(14 ) A7 B7 經濟部中央揉隼局貝工消费合作社印31 示為8位元之資料;主電腦將被定義為一如Intelx86TM或是 Pentium系統TM之主個人電腦(PC)系統的CPU ;,·Ρα傳送,,將指 一單一的雙重字元根據工業標準在週邊元件介面(PCI)匯流排 上之移動;’’PCI交易’’係指在匯流排的一單一擁有權期間所發 生的一串列之連績APOi專送(亦-即-,左使篮流排生效和被強 制廢止該匯流排之間的時間);”DMA交易”指所有經由直接記 憶體存取(DMA)的請求資料,該資料在存取主記憶體時可以 要求完成一或多次PCI交易;’’DMA讀取交易,,定義資料被由 主CPU的記憶體傳送到系統200内的晶片上記憶體中之交易( 即資料自主記憶體中讀取出來);· ’’DMA寫入交易”表示資料由 系統2 00内的晶片上記憶體傳送到主C P U的記憶體上之交易( 即資料被寫入主記憶體);一”DMA本地交易”指資料在系統 200内的隨機存取的晶片上記憶體中之兩個(如程式記憶體202 、元素記憶體203和取樣RAM204)之間傳送之交易;内部的除 錯暫存器也可以在一本地交易期間經由DMA資料匯流排而被 存取。 加速器200最好和一PCI匯流排介面,因而它包括一PCI匯流 排介面206,此PCI匯流排介面206尚被耦合至輸入/輸出埠207 ,以提供串接的音頻資料、MIDI指令和遊戲搖桿資訊。一 DMA引擎(控制器)208經由32位元的DMA匯流排209控制主記 憶體和程式記憶體202、元素RAM203和取樣RAM204之間以 及晶片上記憶體202/203/204之間直接記憶-體存取。 係數ROM201最好是一6K字元X32位元/字元的元件,它通 常能維持執行不同的信號處理運算所需的係數和元素,例如 -17 本紙張尺度通用中國囤家標準(CNS ) A4規格(210X297公釐) 請 先 閱 讀 背 面 之 注
I
頁 訂 五、發明说明(15 ) A7 B7 ,用以取樣率轉換的係數、用以音樂合成的正弦波形表、仁_ 定則和A·定則的解壓縮表、D〇lby(杜比)濾波係數和一 ADPCM解碼表皆是該係數ROM内所維持者。 加速器200是以一Harvard架構為基礎而建立的,該架構具有一與主互盤12必企座^置羞鬼爐體分開的相 經濟部中央揉準局負工消资合作社印製 111以及其相關的資料匯流。最好該程式記憶體202之組織為 3.5k字元X40位元/字元,該資料記憶體配置在兩個位址空間 中,且每一位址空間提供流處理器(核心)之運算子,其中一 位址空間包括和如前所述的係數^〇M201相關之元素RAM203 。此元素RAM20‘3最好具有一3.2K字元X32位元/字元的結構 ,除此之外,此元素RAM203包括用於音頻取樣流的流元素 、用於語音之波形表元素、3D聲音元素和3D聲音熱相關的轉 換函數(HRTF)濾波元素。第二位址空間包括取樣RAM105, 它在DMA匯流排211和PCI介面上接收和管理資料,並且經匯 流排213接收資料到和接收來自流處理器丨00之資料。 上述s己憶體203/204各具有兩個介面,一個介面用於流處理 器100,一個介面用於DMA引擎208。DMA208係負責經由 DMA記憶體介面而提供指示和資料至該流處理器1〇〇上,並 且將這些記憶體的結果傳回主電腦中β該每一個功能性記憶 體202/203/204在結構上是由兩個具體的記憶體組成,其使所 有的資料和指示被加至一記憶體的奇數位址上,和使所有的 資料和指示加至另一記憶體的偶··數位址上。該每個具體記憶 體内所包括的這兩個記憶體介面中,SP介面是一具有較高優 先性的介面,而DMA介面則具有較低優先性。應注意這些記 -18 本紙張尺度適用中囷國家標準(CNS ) M規格(2丨0X297公釐)
IT k 五、發明説明(1δ A7 B7 是真正雙埠的,而是具有兩個擯制和資料介面和 單 經濟部中央樣準局負工消费合作社印装 RAM只能在每個時序週波中被spi〇〇4*DMA引擎之一 (而非兩者)存取一次,若SP1〇〇在一DMA請求生效的 _ 該SP的存取。但是,在SP未做請求的下個時序週波中,將進 行DMA存取,並經以一”完成”信號提供給該〇河六。該,完成” 信號是由每個RAM所提供的。當DMA208做一存取動作時, 它必須繼續請求相同的存取,查到該,,完成”信號由正被存取 的RAM送回時為止,此時,完成了經Dma介面<Ram窝入 ,或是可以在DMA介面上取得有·效的READ(讀取)資料。 記憶體被内插的事實可確使(平均上來說)DMA可在每隔一 週波時對任何一個RAM做存取。此外,碼的形態器(pr〇filer^ 也可以保證DMA永遠不會缺乏對這些記憶體中的每一個做存 取。 上述之第二資料位址空間包括取樣RAM204,在本例示實 施例中,此取樣RAM204是一3K字元X32位元/字元的結構》 該取樣RAM204包括取樣率轉換緩衝器、波形表FIFO緩衝器 、波形表效果(合音和反響)緩衝器、3D聲音緩衝器和3D聲音 SRC緩衝器》 該主CPU或流處理器(核心)1〇〇任一者可啟始對晶片上RAM 的任何加速器之直接記憶體存取:,.在任何一種情況下,請求 裝置或次系統將暫存器載入該0河八引擎208中。該01^八引擎 20811提供載入裝置之優先性’以執行對該内部記憶體 19- 本紙尺度適用中卿家標準(CNS)八4胁(2丨0X297公袭) (請先閱讀背面之注 )I裝丨_ 7項本頁 訂 五、發明説明(17 ) A7 B7 202/203/204和來自該内部記憶體202/203/204之自動的區塊轉 換。此DMA引擎208亦提供主電腦執行對加速器 RAM202/203/204之一個接一個的存取作用(“peeks和pokes”) 之能力。這些存取必須是傳統的對RAM202/203/204内之個別 定j止的記憶體位置之讀取和窝入作用。___ 請 先 聞 讀 背 面 之 注 經濟部中央樣準局負工消費合作社印«. 主電腦不能直接地讀取和窝入程式記憶體以修正可能正在 執行的碼(雖然它可以要求一直接的記憶體存取以將資料複製 到程式記憶體中),例如,主電腦不能窝入程式記憶體以插入 一中斷點。因此,策略單元205被提供以與該程式記憶體匯流 排耦合。最好該策略單元205整合於該流處理器(核心)1〇〇中 ,但在圖2中以一分開的方區塊顯示以利分析其操作方式。該 策略單元205監視用以傳輸高至8個預設位址之一的位址匯流 排’當特定位址之一出現在該匯流排上時,則生效一使流處 理器100在程式碼執行期間分支的策略。既然ROM201内之碼 不能被修正以執行類似的工作,如插入中斷點,故習於本行 技藝之士將了解該策略亦可提供於ROM201中使用。 流處理器核心100必須是一 16位元的機器,但是它的累進器 是全寬的以能處理完整的產品以及保護位元。因此該係數 ROM201、元素RAM203和取樣RAM204皆是32位元寬的裝置 ,以支持在將於下文討論的雙乘法累進單元内的同時相乘和 相加作用。此特徵得有利地提供立體音之處理。通常,係數 是以20位元字元的方式由該ROM201中存取而得,和和以兩 個16位元之字元管路化的方式之取樣資料與之配對進入單一 的元取樣記憶體位置中》 -20- 本紙伕尺度適用中國國家標準(CNS ) A4規格(210X297公釐) 一言
|〇| %焱t I 訂 五、發明説明(18) A7 B7 經濟部中央樣準扃負工消费合作•社印簟 當主電腦存取加速器200記憶體時(例如在窥看和探刺; peeks and pokes期間)’加速器200之作用如同該PCI匯流排 上的從屬裝置(即執行從屬式存取)。當加速器200正在一DMA 操作期間驅動PCI匯流排時’不管是否資料正被送出或是正自 主電腦收得」镇加JH1M皆是麗流排之主從裝置」_______ DMA引擎208提供取樣RAM204内的基本能充填和洩出緩衝 器的設定。可以設定高達96個這類緩衝器,以支持96個個別 的資料流。特別地是’該DMA引擎208定義一用於該取樣記 憶體104内(例如)的每一流之模組緩衝器以及主記憶體内的對 應的圓形缓衝器。基本上,當該-流處理器100 —次讀出16個字 元時,該取樣記憶體204内.容變為全部的一半時,該流處理器 1 〇〇會請求該DMA引擎208充填取樣記憶體204内的模组緩衝 器。 一對DMA引擎之以流處理器100為基礎的請求以定址儲存 於元素記憶體203内的請求器結構之方式啟始,該請求器定義 諸如傳送之大小、開始的位址(假設在主記憶體中)和一目的 地(假設在取樣記憶體中)等之事項。雖然本例中係假設主記 憶體是來源和取樣記憶體204是目的地,但是其他和DMA傳 送有關的記憶體之聯合亦是可能的。接下來,DMA引擎208 可根據該請求器所定義者更新來源和目的地資訊,但只更新 來源或是目的地其中之一。有利地是,一在取樣記憶體204内 移動之圓形緩衝器和一在主電腦··中前進的緩衝器可被設定, 而不需要在該轉換期間被鎖定在一起。 該E)MA引擎208可有利的包括一種設備,若它在加速器記 -21 · 本紙張尺度適用中國囷家橾率(CNS ) Α4規格(210Χ 297公釐) (請先Mtf背- \)· 面之注t事項寫本萸> 裝·
,1T A7 B7 五、發明説明(19 憶體202/203/204和PCI匯流排之間傳送資料時,該DMA引擎 208即可選擇性地中斷和允許主電腦執行窥看和探刺作用。該 DMA引擎208亦支持對主記憶體之散亂/集中式存取,而允許 對邏輯上在主記憶體中是連續的但在具體的記憶體中是具體 上不連料取,在此情況下, 憶醴中,以識別散亂頁之位置。當DMA引擎208讀取主記憶 體内之一頁時,它可決定它是正在讀取一流,因此可立即地 設定對下一頁之請求,包括對頁表之請求。下一頁之請求通 常是在對目前頁之存取完成之前·即服務的,因而當DMA完成 了目前的頁時,它會檢查是否已完成了下一頁之頁表請求, 若已完成,則DMA引擎208只會·簡單地跳到產生對下一頁之 請求。正因為在一存取期間,它會花去相當長的時間在一資 料頁上移動(一頁基本是4BC位元組之長度,或者和1K取樣的 立體取樣有關),因而此處理的優點是可使頁表的優先性向下 推。換句話說,在一次讀取16個取樣時’它會花費足夠長的 時間,使得散亂/集中頁表之讀取會被延遲,直到對主記憶體 進行較高優先性的操作為止(因為他們不需要立即被執行)。 若說明起見,一PCI匯流排的基本特性是一個重要的考量因 素。對一與PCI匯流排耦合的裝置可使用的PCI即時頻寬並不 是以每秒多少位元組或是每秒多少字元的方式特定,而是以 每秒多少交易的方式特定的。此即暗示著和少量資訊有關的 交易可以花去和一大量資料有關:的交易,樣多的時間,在大 部份的PCI交易中,資訊是以叢集的方式傳送的。 屋束音頻應用中,在某些例子下音頻流是以相當高的速率 22 本纸張尺度適用中國國家標準(CNS > Α4規格(210Χ297公釐) 請 先 Μ 讀 背 £ 之 注
頁 經濟部中央標準局貝工消费合作社印製 A7 B7 五、發明説明(2()) ―一 以叢集的方式出現至一加速器2〇〇中,該速率亦決定了資料必 須由匯流排讀出至記憶體的速率。一用以使系統功能最佳化 的方式是使在特定數目的非常快的交易被要求充填取樣 RAM204内的緩衝器時,移除?(:1匯流排所不需要的交易。取 器各被用來儲存一音頻流,而較小的緩衝器用以儲存可以被 處理的全部流。舉例而言,在諸如音樂合成的應用中,可能 就需要32或64個流以供做音樂合成本身之用,更不提可能需 要16至20個流以做其他執行的玉.# ^換句話說,全部的流可 能相當地大’因而要能支持所有的流但.不會使緩衝器太大的 要件是設計上的一大挑戰。 根據本發明之原理’該散亂/集中特性至少部份是因應將資 料裳集傳送到取樣記憶體緩衝器的問題而生,特別地是,瞬 間頻寬可以由向下推動頁表讀取的優先順序之方式增加。若 早一點啟始下一個存取請求,則可以在目前的頁存取期間的 任何時間進行下一頁表的讀取、使頁表讀取優先性降低以及 可使區流排傳送音頻流資料叢集。一 pci匯流排可供匯流排上 之單一裝置可利用之頻寬如每秒10M位元組之小者,雖然它 有一整合的最佳的每秒1331^位元组之頻寬。除此之外,匯流 排上之一給定的裝置必須與該匯流排上之亦要求頻寬的6個或 6個以上之其他裝置競爭。 一根據本發明之原理基本上由.主電腦啟始的DMA傳送之進 行方_式通常如下:主電腦將定義該傳送的資訊寫入主記憶體 中ή 一组暫存器中’在此同時,流處理器核心丨〇〇在pci介面 -23 - 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) <請先聞讀背面之注f事項死 --裝-- Λ/ 本頁) 訂 經濟部中央樣準局貝工消费合作社印製 A 7 B7 經濟部中夫搮準扃負工消费合作社印装 五、發明説明(21) 206上啟始主DMA,和當該PCI介面準備好時’以信號通知 DMA引擎208自主記憶體内的暫存器中抓取設定的資訊。 DMA引擎208因響應於此設定的資訊而生效一請求以經由PCI 介面206而存取PCI匯流排’一旦該請求被允許且該DMA引擎 208已控制了Μ排,DMA引擎—2⑽ΙίΑϋ該^皮於資细— 傳送來自該主記憶體的資訊。 一旦主電腦允許PCI匯流排對DMA引擎208之請求,但是在 DMA引擎208可請求一資料之請求之前’該DMA引擎208即會 送出一位址至該主電腦上以供主電腦比較。此主電腦確定該 位址是在主電腦的位址空間内然後接受此交易。接著主電 腦會檢查其高速存取以決定是否所需的資料已被高速存取或 是否此存取必須由主系統記憶體中進行β當資料已被設置後 ,在主PCI橋内的控制器即開始讀取記憶體之資料,並將之傳 送到PCI匯流排上。 在進行對加速器200程式記憶體之寫入時,所生效的請求乃 定義被載入RAM的32位元之字元的數目,其載入上限為2〇14 個32位元之字元。最好該DMA引擎208以64個32位元之字元 叢集送出請求到PCI匯流排上,並與入記憶體中,直到完成了 一冗全的交易為止,在冗成存取後*該DMA引擎208即以信 號通知該加速器200中斷控制邏輯,以傳送一指示主〇1^八已 完成之中斷信號至該主電腦上》 應注意和什麼程式樓正在主電:腦上執行而定,可將—啟始 值載入元素記憶體或是取樣記憶體中。通常,該元素記憶體 203赛由一驅動器啟始’而非由前述之程式所啟始;該啟始化 -24- 本紙張尺度通用中國國家揉準(CNS } A4#!#· ( 210X297公釐) (請先W讀背面之注T項一^寫本頁) 裝 訂 五、發明说明(22 ) A7 B7 經濟部中央樣準局貝工消费合作社印装 是應用所特定的’且是由在主電腦上運作的DSP應用之代表 進行的。例如’可被設置於元素記憶體内的諸多運算法之一 是AC3 Dolby漉波運算法,假設此aC3 Dolby遽波運算法已經 被載入,則在主電腦内之碼以信號通知該加速器2〇〇内之一驅 數莽上啟始用於該夕記憶體。__ 一旦所有的次系統皆已被啟始化,該加速器2〇〇即準備開始 ,因而釋放重設,且該流處理器核心(sp)1〇〇開始運作。51>首 先開始在一被定址於程式記憶體位址〇〇4〇h處之’,背景工作,,下 執行’但是該背景工作最好始令由一圖框時間之開始時開始 ’因此’實際上所執行的第一値字元是-位於程式記憶體位址 0020h的前景中斷向量,接著該”前景工作,,執行完成,且本流 程回到背景的工作上。換句話說,由一軟體的觀點看之,由 流處理器100所執行的工作(操作)區分即是該前景和背景工作 之間。 背景工作是以8kHz速率運作,而該前景工作是在一8kHz圖 框中斷時所運作的。諸如D〇lby AC#3音頻濾波之運算法是在( 例如)非為百萬秒之比例而是可能為32或48百萬秒長的音頻區 塊上操作的,但因為程式必須被分成非常小的區塊以供執行 之故’這類的操作方式要以8ΚΗζ的圖框中斷率操作變得非常 的不方便。有利的是,這類操作是在背中進行的。在前景期 間’除了如Dolby AC#3音頻濾波之運算所花費的處理時間以 外還需要大量的處理。 :- _ 巧所示為一執行示意圖,為討論起見,其說明選定數目 的_]乍週波。在圖2B中,標示以BG的較低位準線指示背景工 •25- 本紙張尺度14用中1)國家樣準(CNS ) A4規格(21QX297公竣) 請 先 閱 * 之 注 項書〇旁 裝 訂 五、發明説明(23 ) A7 B7 經濟部中央標準局負工消費合作社印装 作,而標钟G之較高位料職外景 县開始在背景中:處理’接著立刻轉換到前景部份,然 =景工作之運作料,㈣細到背景㈣。 在每個處理圖框被一圖框中斷啟時即重 ^說明之故圖框率是職,若1料流㈣iKHz^^ 改變因而前景工作的時序可能也相此依需要而改變,^ 理每-圖框所取樣的多個取樣1注意其他的流也可各以^ 同的速率運作’例如32kHzm22.G5 k.Hz,而這些流皆 整合為單一聲音’因此’前景時間亦會在流之間改變。 取樣率轉換混合最好是前景工作之結構所基本的初級操作 。在取樣率轉換混合時,取樣係以一給定的取樣率聯合在一 起,例如,這些取樣可以被混合在一起,以某一給定位準受 音!的控制,然後被混合到高達44.1KHz的速率(由主電腦軟 體所設定的最終速率)。另一種變化是該最終速率可以是 32KHz,因而,若資料已經以此32KHz的速率運作時,該向 上混合的步驟可以省略,並可省去處理器的過度運作。由— 數位信號處理的觀點來看,由8KHz轉換到44 1KHz或是由 32KHz轉換到44_1ΚΗρ#是相等的操作。一多相的濾波方式係 於此軟體中實施,輸入的取樣被送至128個多相濾波器上,並 且在兩個最接近的響應濾波器甲.··進行一插置作用,以獲得高 解。換句話說,本處理實際上以128插置,然後線性插= 至高達44.1KHZ,且選出該線性插置之點的之一以映射到輸 26 本紙張尺度適用中國國家標準(CNS ) A4祝格(2丨Οχ297公釐) (請先閲讀背面之注 •項 本Jr〕 裝
,1T » ! HI m · 經濟部中央樣準局負工消费合作社印裝 A7 B7 五、發明説明(24) 出上…相位增量被特定為時間上的増量,此外,既然已使 用了 2插置之次方,故可使用-小的修正因素;當由一8κΗζ 混合成44·1ΚΗζ時,f有-不足2之倍數的數字當作係數(因素 ),因此需要某些插置因素,如7、3、1 ^基本上,該插置是 A一玆俏小认/μ 1KH:: 之目標率的百萬分之3〇部分。 根據本發明所提供的一較佳方法是重視因為插置通常只使 用為2之次方的係數之故而產生的緩慢誤差。在每一圖框時, 一選定數目的LSB之修正被加至_相位中,而維持在一選定的 圖框數時相位的累進。例如,假設一插置是在8KHz和44KHz 之間,主要因素的分析顯Tjj在個8 KHz的圖框上有441 _ 44.1 KHz的取樣,因而,可以取出一共用的分除器。接著計 算等量的時間,並計算在該段時間上所產生的誤差,然後以 8KHz為基礎做修正,其中每81^^增加—小修正,直到已經 過80個圖框之期間結束為止。在此80個圖框以後,重復該修 正過程。 ' 前景是一習知方式的中斷。如圖2B所示者,前景/背景的區 隔是因為一圖框之中斷而產生的,其中前景工作是在該中斷 上啟始的,而在完成了前景工作後回到背景工作。在基本的 情況下,在該背景中並無處理要運作,且背景工作是瞬間運 作的,而決定無操作要被執行則進入睡眠狀態。在此睡眠狀 態期間,可停止時序以節省電力。+此背景可以因—處理器之 中卞而復甦,否則,流程在下一次圖框中斷時回到前景工作 -27- 本纸佚尺度適用中國國家樣準(CNS ) A4规格(2丨OX297公釐) {請先Μ讀背面之注篆事項再填寫本頁)
A7 B7 五、發明説明(25 ) 但是,若決定了一工作必須在背景期間執行時,例如主電 腦已經窝入一字元至記憶體以請求處理或繼續執行在需要中 斷之前已啟始的運算法,則此處理會發生於該背景期間。背 景工作由下一圖框中斷(即使它仍然在執行一工作時亦然)然 後進入睡眠狀態。此時,運作前景工作,且若正在執杆」一JEL 當簡單的搡作時,可節省CPU的週波。接著該背景工作基本 上可以消耗未在前景内消耗的CPU週波,此使用前景中未使 用的週波以執行背景的操作之能力可允許在需要實質的處理 時間量之背景中處理運算法,隹仍可維持高資料率取樣處理 的即時處理。例如,AC2運算法之圖框·週期在32和48百萬秒 之間,32百萬秒(舉例)等效於2.56個前景圖框。在此時間量上 ,前景的中斷(工作)需要某一數目的處理器MIA,因此,以 一 MIP觀點來看,要對背景工作做一計算以決定是否由前景 工作中保留適當的MIP,以即時地完成所期望的背景工作。 被配置在該前景工作的時間然後可以依需要而改變,以容納 該背景工作。 前景工作亦可能為一給定的圖框使用多於其所分攤的時間 。但是在此情況下,在下一圖框期間,前景工作所使用的時 間必須小於其分攤的時間。事實上,前景工作由一背景之中 斷開始,然後繼續其前景之處理,直到完成為止,此時再回 到背景工作。 本彈性的圖框特徵在當工作以湘當低的速率運作時是有利 的,這可能發生於(例如)處理8KHz或是4KHz取樣的期間。若 一4lCHz取樣正被處理和使用一非常長的濾波器時,濾波作用 -28- 本紙張尺度適用中國國家標準(CNS ) A4说格(2丨0X297公釐) 請 先 閲 讀 背 之 注 項
1Γ 經濟部中央橾準局貝工消费合作社印製 A7 B7 五、發明説明(26) --------Μ裝— (請先《讀背面之注^事項本頁 可能只有在每隔-圖框時才需要,然後該遽波工作可八 攤-相當接近平均工作時間的時間週期,而非分攤 ς 況下的時間。只要給定的工作有在―圖框期間需要較; 間和在緊接下來的囷框中需要較少的時間之特性, 平均情況之時ϋϋΐι繼績進杆〇罝一 Λ刀琳 3* - - -----1_______________ 允許的’但若有兩個圖框過度運作發生時, 差的狀況。例如,可能需要充填輸入/輸出管路。 - 訂 在圖框中斷結束時,會由該中斷中回復。在每—圖框期間 ,前景工作内的任何時間皆可以r被執行,其中背景工作在圖 框中斷時繼績維持,而前景工作獨立地·在每—圖框期間執行 程式。在該前景内所運作的工作可以在一圖框上而非下一個 圖框上執行某些工作,雖然每個前景工作也有機會在每個圖 框上執行。 經濟部中央秣率局貝工消費合作·社印«. 支持前景工作的較佳軟體使用一全球的指示器實施一樹狀 結構。圖2C所示為說明本原理的一方塊圖。此時,召唤一輸 出工作以用於自取樣記憶體取出的兩個32ΚΗζ和一個22.05 KHz流,使其向上轉換成44·1ΚΗζ,並將之混合以供輸出》通 常本程式首先呼叫在次列表上的第一個工作,此第一個工作 依序呼叫其執行所需的所有需要的輸入。在本例示實施例中 ,該第一工作是在區塊220上的輸出工作,其呼唤混合的 44.ΙΚΗζ資料流和聲量控制,包括振幅封套產生。最初因為 沒有資料可供輸出,所以在22.1.時為零並且回復(null and return);主電腦保證任何未加工的輸入皆會在工作列表的尾 端。 -29- 本紙張尺度通用中國國家標準(CNS ) A4規格(210X297公釐) A7 B7 經濟部中央揉準局貝工消資合作社印衷 五、發明説明(27) 用以混合和輸出的資料首先在32KHz取樣率轉換(SRC)和流 混合工作222時被叫出,若是未加工的32KHz資料,則混合的 工作需要來自取樣RAM204内的對應取樣緩衝器的兩個資料 流。在本例示的操作中’用於流1的32KHz資料在方區塊223 B♦被讀出,接下來 被讀取時,取樣位址產生單元產生請求以取還資料,而不管 在該取樣緩衝器内的用於下一個緩衝器之空間何時可用以充 填要被輸入的資料。此工作最好被分配到轉換/混合的工作上 ,因為該混合器當它自取樣RAM中取還資料時也負貴增強輸 入指示器。該取樣緩衝器之尺寸適合作為流速率之函數,當 在方區塊223和224處充填該32 KHz緩衝器時,本流程會到達 零225,且回到混合/轉換工作22以做混合。 該32KHz流的混合結果被儲存於一中間緩衝器中,然後在 自該中間緩衝器取還的32KHz取樣上執行取樣速率的轉換(方 區塊222),以將混合的資料流由32KHz轉換為44.1KHZ。較佳 的取樣速率轉換器是一以24個128多相濾波器或是3K濾波器 係數實施的24分接頭濾波器。取樣速率轉換的結果接著被送 到一輸出緩衝器中。 下一個呼叫的工作是在方區塊226上所執行的22.05KHz至 44.ΙΚΗζ的取樣速率轉換。此工作依序在方區塊227時呼叫未 加工的22.05KHZ輸入(本例中只有一單一的22.05KHZ流被處理 )。此22.05KHz輸入取樣緩衝器被充填以未加工的資料,且流 程繼續,直到在228時到達零為止。因為輸入資料是可利用的 ,¥)充程回到226的取樣速率轉換工作。22.04KHZ之流被自 -30- 本紙張尺度適用中國國家橾準(CNS ) A4規格(210X297公釐_y (請先Μ讀背面之注t事項寫本頁 :裝. 訂 Α7 Β7 五、發明説明(28 (請先Μ婧背面之注t事項寫本頁 緩衝4中取還、混合然後使用取樣速率轉換法轉換成一 44.1KHZ的速率。此過程最好使用和32KHz所用之相同的碼, 但是以一不同的控制區塊和不同的速率為之。該22 〇51^^之 混合和轉換之結果被儲存於一輸出緩衝器中。 一换|已完成,則在229時到達一零,且歲_ 程回到輸出混合的工作22〇。資料被混合後被送至一輸出缓衝 器中以傳輸,例如傳輸至主電腦上,接下來執行下一個工作 〇 前面討論之流程遵循_樹狀結。指向一孩子工作,然後 在該孩=工作之下,指向器指向旁系兄.弟,如此允許實施一 在每個節點上只需要兩個指示器之多分支樹。一例示的组織 訂 化樹狀結構如圖2D所示。該流程由節點丨開始,然後進行節 點2,此時》需要來自旁系兄弟的輸入,節點2呼叫節點3以要求 其輸入,節點3需要輸入,且依序呼叫節點4。節點4執行必須 的處理=獲得所需的資料,並且回到節點3。此節點3完成其 輸出到節點2,然後分支到節點6,節點6完成其處理並到達-零,而回到節點2。 經濟部中央搮準局負工消费合作社印製 節點j分支到節點5 ’並重覆類似在節點3所執行的流程 ,當即點I完成其工作並回到節點〗以後,節點丨分支到節點9 ,剩下的節點以類似節點2之流程重覆進行。 圖所不是在圖2C中所說明之以流處理器100所實施的處 理步馭,其中類似的數字代表類似的操作。兩個32KHz的未 加f =料流輸入取樣速率轉換器222,和—22 〇5κΗζ之未加 工資科流輸入第二個取樣速率轉換器226中。由這些取樣速率 -31 - 本紙法尺纽財關2Ι〇χ297^) A7 _______B7五、發明说明(29 ) ' 經濟部中央標準局貝工消费合作杜印製 轉換器所輸出的44.1KHZ輸出被輸入一混合器/輸出220上。 樹狀結構要求執行的優先性。在前述討論的流程中,在圈 2D所示的樹上之工作的執行順序是由左到右,此樹狀結構能 有利地提供一用以組織這些工作的裝置。一工作被執行,然 後流程由向下進行,因為矣個左樹上方之工作會呼叫樹 下方之工作輸入》應了解輸高位準之工作所需的資料量與該 樹之較低的工作所需者不同,例如,若在該樹頂端需要六個 輸出取樣以執行44.ΙΚΗζ之轉換時,在該樹底部則只需要四 個輸入取樣。因此,藉著適當地.组織此樹的方式,有可能驅 動來自主從元件輸出的多個處理路徑- 主軟體負貴指示為SP程式記憶體202内之鏈結結構之樹,然 後該樹設置在程式記憶體中,和當在主電腦上運作的一應用 以一給定的取樣率請求一流時,該主電腦即會檢查以決定如 圖1C所示之取樣率轉換器樹要求取樣記憶體内的取樣轉換成 所需之輸出是否可行。若所要求之取樣率轉換器是可行的, 則使用該轉換器,否則主電腦創造一取樣率轉換器樹並使之 與系統的剩下部分鏈結。在本例中,樹被轉換兩次,一次是 做取樣率轉換,一次是做混合,因此,必須將額外的取樣提 供至輸出工作上’以確使符合輸出之需求β 主電腦只會以32位元之字元寫入。例如,對音量控制而言 ,主電腦寫入一完全的音量值,其中16位元用於左聲道和16 位元用於右聲道,這兩個16位元:的字元是不可分開的。接著 加$器2〇0更新左和右聲道音量字元,而該聲道音量字元可以 由主電腦在任何時候以寫入一32位元之字元至該加速器2〇〇的 -32- 本紙張尺度適用中國國 (請先Μ讀背面之注责事項再填寫本頁} oi 裝 訂 A7 B7 五、發明说明(30) 方式改變之。應注意該左和右聲道沒有必要需設定到相同的 音量,換句話說’這兩個音量控制字元對其個別的聲道而言 是獨特的,雖然他們配在一起合成一單一的雙重字元。為得 到較大範圍的音量,該左/右音量雙重字元分別被以在一單一 乘學-里内的一左/右取樣對相奭。__________一一- 囷2F和2G係說明兩個例示的资訊處理系統,其中加速器 200可以被適當地使用。習於本行技藝之士將知道該加速器 200可被應用於多個資訊處理系統中,因此,本發明之原理並 且限於例如囷2F和2G所顯示的备統。 在如圖2F所顯示的系統230中,加速器200被耦合於一PCI匯 流排231中,如上文已詳細說明者。本系統最好被應用於不需 要聲音爆發(Sound Blaster)之能力的系統中。該加速器200亦 由一串接的資料鏈結而被耦合於一 AC-’97音頻Codec232中’ 該系統230亦包括一 CPU,例如Intel X86™或PentiumTM、 ULTRASPARC或是經由一主電腦橋式/記憶體控制器234與一 PCI匯流排231搞合之PowerPC等級之處理器。 在加速器200和Codec232之間的串接鏈結在每一方向支持12 個頻道,其時序為12MHz和其取樣率為48KHz。此互連能有 利地提供電話通話法基礎的音頻,其包括電信遊戲和其他不 能被目前之系統支持的通信應用。 第二系統236如圖2G所示。在本系統236中,音頻經音頻母 板而被輸入和輸出至該系統中:,.而該母板最好是一 Crystal Semiconductor CS4237B母板音頻板237。此母板237係經由一 數卷^式鏈結而直接耦合至該加速器200上,並經由一 ISA匯流 -33 - 本纸張尺度適用中國國家揉準(CNS } A4规格(2丨0XM7公釐) (請先Μ讀背面之注t事項k寫本萸 . 經濟部中央樣準扃員工消贽合作社印«. 五、發明説明(3!) A7 B7 排238和一 ISA匯流排橋239而與PCI匯流排231耦合。該系統 236通常支持聲音爆發之處理以及更易於使用一13八匯流排執 行的類似操作。在此結構中,加速器200先是設置於該PCI匯 流排上’以得到高的頻寬和與主電腦之低潛伏性之存取。數 达 位式鏈結首先在諠迦益毋提展二-------, 娃,县相_ ha &仏一由加速器#結至該母板237上的數位混 今 請 Μ 讀 背 面 之 注 經濟部中央搮準局負工消费合作社印装 結,最好此鏈結包括一由加速器键結至該母板237上的數位混 合器上,做後混合,以及包括由該母板237鏈結到加速器200 的音頻資料輸入鍵結》所有使用該加速器200上之運算法來做 回音消除所需的資料可以由該母·板237經由此數位式鏈結而提 供》 · 圖3 A-3D乃說明在本例示實施例中可使用的四個基本的指 示格式,以及表7a-7所示為其對應的〇Pc〇de(運算碼)地圖; 每一個指示字元皆是40位元長。 圖3 A係說明一較佳的mOp、aOp和ALUop指示格式。移動 操作碼(tnOp)最好是同時以特定的aOp和ALUop場予以解碼和 執行。該m〇p場以及相關的移動運算子場 (mpy/mem/move〇perands)特定一乘法 '元素203記憶體負載/ 儲存、累進器負載(乘法-累進器單元105)或是取樣204記憶體 儲存操作。該乘法-累進(aOp)場以及其相關的乘法-累進運算 子場(addOpers)特定在該乘法-累進單元1 〇5内的一 40位元的位 元操作。此操作不是相加就是相減兩個累進器,或是使該乘 法器所得的乘積加至一累進器或:是一整數的常數中。用於此 mOpcode場的地圖如表7a所示,和用於a〇p場的地圖如表几所 示。 34 本紙張尺度適用中關家網t ( CNS ) ( 21()><297公着) 裝 订
(A 五、發明説明(32) A7 B7 經濟部中夹標準局負工消費合作社印製 該ALU操作碼/運算子’’ALUop”場包括ALU運算碼 (aluOpcode)和ALU運算子(aluOperands)場,該場特定16位元 的ALU104算術指示、16位元的ALU104位移指示以及16位元 的ALU104邏輯指示。用於此ALUop場的地圖已顯示於表7c中 上之進位/借位和選擇性飽和相加_/相減、比較和條件式相加 。最好地是這些指示各可以條件式地在一測試位元上執行, 並且可以在任合ALU狀態旗標出現時條件式地執行一特定條 件式相加。該位移指示因為溢流上之選擇性飽和而包括向左 位移上至15位元以及因為選擇性標識之.延伸而向右位移上至 15個位元,這些位移可以條件式地在一測試位元上執行。該 16位元的邏輯指示包括AND(及閘)、ANDNOT(非及閘)、0R( 或閘)、X〇R(互斥或閘)、測試和條件式移動(這些邏輯指示各 可以條件式地在—測試位元上執行)。條件式移動和該特定的 條件式相加指示類似者,可以在任何AUJ狀態旗標出現時條 件式地執行。 此外’在ALUop場内的移動、負載和儲存指示可指供部分 的雙重字元負載/儲存之能力’且可條件式地在—測試位元上 執行。只有一負載/儲存和一移動可以同時執行。 = 說明一例示的平行延伸的負載/儲存和副叩指示之二· μ ί ϋ *,_該m0p最好同時地以ALU〇p場中的特定操 4二邮、备并執仃,該m〇P或是該ALU〇P特定一索引的元素 負载或儲存,該用於本負載或儲存之f引係由未桴 識的四個位元延_已_^齡元/索丨係由未心 35- 本紙張尺度適用中國國家^^^2ΐ·〇 請 先 聞 之 注 |〇ιI f 頁 訂 經濟部中央樣準局貝工消费合作社印装 A7 _B7 五、發明说明(33 ) ' 圖3C係說明一wideOp指示之格式。表7d是該wideOp指示場 的一較佳映射,該wideOpcode/wideOperands場最好單獨地被 解碼和執行。此指示格式被用以特定程式控制指示,例如條 件式分支、呼叫、回復和適路之零額外消耗(overhead),以及 只是的特殊目並之指示。當前面的指示已經生 效時一乘法已經在申請中,這些指示可以壓抑住前面一個乘 法指示之完成。有利地是,如此可允許這些指示被散置在該 管路式的乘法/相加處理之中。 圖3D所示為一雙重包封的ALUop指示之格式。該 aluOpcode2 和 alu0perands2 (ALUop2)場在該 aluOpcodel 和 aluOperands 1 (ALUop 1)被解碼和執行之後的一個週波時被解 碼和執行,有利地是此形式可允許控制碼的係數包封,該 ALUop 1和ALUop2場以一單元的方式執行,亦即一中斷不能 發生在兩個包封的指示場之間。 圖4所示為16位元的ALU104之功能方塊圖,在本例示實施 例中,該ALU104包括一 16位元的加法器400、一16位元的屏 障移位器401、一 16位元的邏輯單元402以及一輸出選擇器4〇3 。ALU104的算術功能指示係如附錄1所示,其基本的指示包 括相加、相減、比較和條件式相加指示。這些指示大部份是 為aluOp和wideOp格式。除此以外,指令是用以相加(溢流上 無飽和)、與溢流上之飽和相加、與進位相加(溢流上無飽和) 、以進位和溢流上之飽和相加、:·以溢流上飽和之條件式相加 、根據所需的條件比較和設定測試位元、相減(溢流上無飽和 )、β溢流上之飽和相減、以借位相減(溢流上無飽和)和以借 -36- 本紙張/^適用中国國家揉準(〔奶)八4胁(2丨()><297公釐) ' (請先Μ讀背面之注會事項ήί?寫本頁) "裝.
、1T 五、發明説明(34) 位及溢流上之飽和相減。 ALU位移指示被設定在附錄2中,其基本的位移操作 輯式向左、(溢流上無飽和)、以溢流上之飽和邏輯式向 邏輯式向右(未標識向右位移者,插入零位元)、和算 : 移向右識左嚴皇」_延^~ 用於ALU104之邏輯指示如附錄3所列 ^邏輯AND、邏輯ANDNOT、邏輯包含(inclusive)_〇R、: 輯互斥-OR、位元設^和清除、根據所需的條件做邏輯 和選擇性地設定測試位元、根據.巧需的條件做邏輯位元= 和選擇性的設定位元以及條件式·移動' ALU104接收所有來自暫存器檔1〇1之來源資料,雖然它也 可以採用來自一指示的立即資料,並將結果寫回該暫存器檔 中。该ALU104在16位元的資料上操作,因此,會有兩個輸入 同時地由暫存器檔提供到ALU114上,其中該暫存器檔1〇1的 左行之暫存器提供一輸入,而該暫存器檔1〇1的右行之暫存器 提供第二個輸入,其結果被寫回該暫存器檔1〇1的一單―的“ 位兀目的地上。例如,暫存器尺4之内容可以被加入暫存器 之内容以及儲存於暫存器R3内的結果中。除了 一加法器以外 ’此ALU104尚包含屏障位移器4(Π,以使得右或左屏障位移 可以在飽和之下進行。諸如AND/OR-儲存之其他的操作也可 在邏輯單元403中被支持,該ALU亦設定在一旗標暫存器中的 旗標為給定操作的結果之一部份:。_ . 巧5係為元素/係數位址產生單元1〇2之較詳細的功能方塊囷 該元素/係數位址產生單元1〇2可允許元素rAM2〇3和係數 -37- 經濟部中央揉準局貝工消費合作社印«. A7 ____B7 五、發明説明(35 ) ~ ROM被以交替的位址模式存取,三個這類的模式具有·間接 的後增量定址、暫存器間接的索引定址、或是直接的定址, 其中該位址係在指示中直接特定者。 該索引定址對於存取元素RAM和係數ROM資料儲存所使用 的資料A構是非常有1放v在壹引定址虫丄=指千三货Θ贫 結構的開始’並且經由來自指示器的一給定值索引的方式, 可以隨機地存取該結構内的資料。大部分的DSp要求資料在 記憶體中依其要求的順序組構,然後進行一後增量之定址, 以在每個資料結構上移動。但是r,包括多個不同需要隨機存 取的元素之资料結構是沒有效率的,因此,元素RAM和係數 ROM使用一索引式定址。該索引定址對定時特殊的暫存器時 亦是有償值的。程式設計者可使用兩個指示,一是移動到索 引暫存器,一是由索引暫存器上移出。使用這些指示的方式 ,程式設計者可經由該索引定址的方法存取特定的暫存器。 定址模式是經由一多工器504選擇的,其輸出被供至加法器 502的第一輪入上。對增量定址而言,多工器5〇4在增量暫存 器500的值之間選擇,以做增量定址,和在做索引定址時,通 過索引暫存器501内之值。接著加法器502使選擇的增量或多 工器504所通過的索引值相加至一自檔暫存sr〇_r3的一選定之 一的讀取埠所收到的位址上。 該加法器502之輸出被送回到該選定的暫存器⑺-^的後修正 寫回埠上,而提供原始的位址。参工器5〇3亦允許做直接存取 。特別地是,多工器503在該加法器502的輸出或直接自該暫 存窸韃101内所選定的暫存器中收到的位址之間選擇β -38 - 本紙張尺度適用中國國家橾準(CNS> Α4規格(2丨0Χ297公釐) <請先«|讀背面之注f事項寫本頁 裝 訂 經濟部中夾梂準扃貝工消费合作社印装 A7 _B7 五、發明説明(36 ) ' 囷6A所示為取樣位址產生單元(AGU)103的一功能方塊圖, 該取樣位址產生單元103包括一 32位元的模組/反向進位加法 器600 ' — DMA檢查601和一串暫存器,其内容將詳細描述於 表1中。這些内容包括取樣記憶體位址暫存器(rsa)602、取樣 HI及、取歡AGU結l構象春^ (Γβ0:οηΙ^)604、取板AGU DMA位址暫存器60^和取樣AGU資 料暫存器606。將於下文詳細說明的DMA請求器607亦形成此 取樣位址產生單元103的一部份》 一Codec通常被搞合於串接的I/O痒207上,以做串接的音頻 資料之直接輸入和輸出。加速器200亦可以將該資料送回pci 匯流排中。 一位址被載入定義其中對取樣記憶體204的下一個〇ΜΑ將 被執行的位址之位址暫存器602中。該位址每當DMA引擎208 生效一DMA請求時即被更新》取樣RAM AGU103由此第一位 址以及指示流處理器100是否正在讀取或窝入的資訊決定是否 在寫入主電腦或是讀取主電腦期間,在取樣記憶體204中有可 利用的足夠資料、是否在該取樣記憶體中有足夠的空間供讀 取資料進來。若這些條件皆符合,則該DMA請求生效,取^ RAM AGU103基於取樣位址之部分而提供的元素來預估這此 情況。如此可有利地允許一程式設計者必須忽略何時於生一 DMA、所有必須做的是載入適當的暫存器’且在目前&處理 圖框期間位址最後一次前進以後4若程式設計者請求則^發 — DMA ° t取樣RAM AGUl〇3決定可服務一請求時,此請求會 -39- 本纸張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) C婧先Μ婧背面之注^•項再填寫本筲)
A7 B7 五、發明説明(37) 在一設定輸出到該DMA引擎208的請求之優先順序的請求器 607上生效,一次只可以有—個DMA請求生效,雖然在請求 器陣列内有96個入口可用以支持進入主電腦和由主電腦出來 的(雖非雙向)的96個可能的音頻流亦是如此β由元素記憶體 所皇還並旅求器方—區遲與定了在主記憶龍與从及^速器 憶體内的所有位址之方向。 DMA請求器607以及取樣位址產生器兩者皆可有利地支持 資料流的多個型式,DMA請求器607和取樣AGU103支持16位 元/8位元的立體音/單音脈波碼調彎(pCM)的流,以取樣和回 播用於波形表合成回播的16位元/8位元迴路取樣。最好地是 ,每個DMA頻道消耗16個32位元的字元,且流處理器1〇〇可 處理高達96個DMA頻道。1536個32位元的字元(DMA頻道)支 持96個流。 增量暫存器603包括32位元的暫存器rsi〇、和16位元的暫存 器rsil和rsi2 ’該暫存器rsi2經匯流排sp_pd被載入來自元素記 憶體的低16位元,但是如果這些位元是一32位元暫存器的上 部16位元時則被讀出。 經濟部中央樣準局負工消费合作社印製 (請先Μ讀背面之注言事項再填寫本頁 訂 位址暫存器602包括32位元的暫存器rsa0*rsal以及16位元 的暫存器rsa2和rsa3。一自一選定的位址暫存器6〇2中取還的 位址以加法器增量一來自一對應的增量暫存器6〇3之值,後增 量的位址可被寫回原始位址所發自的位址暫存器,或是直接 地顯示回加法器600的輸入上。此外,取樣AGUi〇3在結構暫 存内設定的位元之控制之下,具有額外增量來自位址暫 存器~的一給定位址一位元組、一字元或是一雙字元之能力。 -40- 本纸浪尺度適用中囷國家榡準(CNS ) Α4規格(210X297公釐) 五、發明説明(38) 圖7係說明一例示的DMA頻道之較佳場。圖7中,DMApdo 代表DMA的優先順序(其中1,1=高、1,〇=中高、0,1=中低和 〇,〇=低優先性);D場是DMA的致能場,maxDMAsize場定義 在雙重字元仕的DMA傳送尺寸;streamNUM場定義識別給定 流的流數目;4上場_定1^1^^隻送的方其中最好是〇定義為-傳送到取樣RAM和1定義為由取樣RAM之傳送);ds場特定在 取樣FIFO緩衝器内被指向取樣相位累進器的資料大小,·該ds 場的一較佳解碼如表8所示。 圖7中的shrl場定義向右位移策一字元,這是一未標識的延 伸位移’以致能使用該雙乘法-累進單元1〇5以做雙倍的精確 算術6 RevCy場是反向進位模式.選擇位元,當此場被選擇時 ,忽略MODULO且只有位址暫存器的上14個位元被以該反向 進位模式計算,而其結果的較低18個位元被清除。 該取樣位址產生單元103的暫存器之功能通常將以圖8敘述 於下,此外尚應參考表1所示。一般而言,暫存器ras 〇_3的上 邵14個位元特定目前進入32位元之取樣RAM204内的位址》 若選擇16位元的已標識資料大小時,則下一個最小有效位元 (rsa 0-3[17]或是取樣位元pTR[i])特定目前的16位元取樣是否 在該取樣RAM204内的特定雙重字元位置中的低或高的16位 元字元中。取樣先以最小有效位元(小_endian)儲存,使得如 果rsa 0-3[17]==0時’會選擇最小有效的16位元之字元;否則 則選擇最大有效的16位元之字元·_〇 .同樣地_,若選擇8位元的已 標,資料’則下兩個最小有效位元(rsa〇_3[l7:16])特定在目前 的32¼元之雙重字元内所包含的四個位元中何者應被選擇。 -41 - 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) A7 -—------五、發明説明(39) — Μ濟部中央樣準局貝工消費合作社印製 圖8中’ sampleBytePtr表示進入取樣ram之可以向下解析到 子元,.·且取樣的和示器,fracByteptr場是一進入取樣ram以用 用於取樣率轉換的比例相位(多相位或是線性内插)之 二器,取樣Bytelncr場定義一向下到位元組解析度的增量( 相侔複。j?_BxtdQ£r^ 邵份(用以做取樣率轉換)。 結構暫存器rsConfigOl是用以建構資料流模組、資料大小以 及用於在位址暫存器rsa〇和rsa 1中所定址的資料之資料型態, 二構暫存器rsC〇nfig23為經位址.暫存器rsa2和rsa3所定址的資 料做相同的動作。至於資料的大小,應.注意可利用四個資料 尺寸8位元的已標識資料,其基本上是用以使儲存於取樣記 憶體内的取樣輸入、提供使8位元的立體取樣配對在二起的^ 8位元模式資料、丨6位元的單音模式資料和必須是】6位元的立 體模式之32位元模式資料。這些資料尺寸的定義是模式支持 者,其可實際使用資料,例如單音或立體音,依應用而定。 換句話說,這些資料尺寸的定義可允許更有效率的儲存和處 理取樣,使得程式設計者只需要選擇資料的尺寸來設定取樣 和處理即可。 被寫入於結構暫存器604的位元亦可致能和抑能〇1^八操作 。流數目被送入DMA請求器607中以產生對對應的資料流之 請求,該流數目最好是向右位移4位元的外部流控制區塊之位 址,遠波數目是8位元的數目..,雖然整體的設計在實施時只處 理96個流。 八 ΰθΑ暫存器605包括分別與保持接下來的DM位址的位址暫 -42- 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) (請先Μ讀背面之注-T事項再填寫本頁) -裝· 訂 -n If 五 發明説明(40) A7 B7 經濟部中央橾準局貝工消费合作社印装 存器rsaO-1和rsa2-3相關的暫存器rsDMAO 1和rsDMA23。 DMA檢查單元601檢查下溢(underflow)以及溢流,該下溢之 測量和輸入流有關,溢流之測量則與輸出流有關。結構暫存 器設定和相關資料流有關的資訊。當資料自取樣記憶體中被 存取時_,來J既位址暫農會|由ϋ器 —來自一選定的位址暫存器之值被後增量,該加法器6〇〇之輸 出到達後增量暫存器608上以及至DMA檢查單元601上。接著 該DMA檢查單元601自對應的DMA暫存器中取出DMA位址(該 位址係為DMA接下來的住址)和·該剛產生的位址,並且決定 是否應允許將該新產生的位址寫·回該暫存器rsa[〇_3]乏一。若 存在一溢流的情況,則保留該存取,直到目的地記憶體已準 備好接受資料為止,如此可防止迴路和不要的過度寫入。該 DMA檢查單元601必須決定在後增量之後的定址位置是否已 經被充填。 sp一sd匯流排回到來自取樣rA1v[2〇4的資料,並將它顯示在 該三個在一單一位元組、一向上位移的位元組、一 16位元的 早元(該位元已被位移進入該32位元之雙重字元的上16位元中 )或是一完全的32位元雙重字元之間選擇的多工器上。多工器 609以為位址暫存器6〇2之低階位址位元的函數之方式選擇位 元組或字元,且實際的資料寬是以作為在對應的結構暫存器 604内的資料尺寸位元設定的函數之方式選擇。 接著所有在該sp_sd匯流排上收到的資料被載入一作用如同 一 管路級的資料暫存器606上,在下一個週波時,該資科 再經由s p—y d匯流排而送至一累進器或該乘法累進單元1 〇 5的
---------II装! (讀先《讀背面之注*-事項k寫本頁 -订 -43
A7 _______B7 五、發明説明(41 ) ^ 乘法器中。由該資料暫存器6〇6提供的資料保留部分基本上是 有其優點的’例如,若資料被要求許多次,則該資料暫存器 606用以存取之用’而非做取樣記憶體之再讀取之用。如此又 可使處理週波被空下來以用作儲存週波。 是一邏輯星農丄它UL來接東DMAi^ 求、储存這些請求’然後使它們非同步式的再生效。一較佳 的圖6B是請求器陣列的一較佳配置,且圖6C所不是該請求器 607的一較佳操作示意圖。在圖6C中,信號最好以下列方式 描述: - dmatgx —程式已請求一DMA?
Svcdon —該DMA引擎己指示·完成了所請求的DMA。 spdebug —在除錯模式下跳到被指示的狀態。 reset —在”重設”模式下跳到被指示的狀態。 有利地是’當DMA請求之產生比DMA引擎208和PCI匯流排 所能服務他們的速度快時,該DMA請求器607可以負责其差 別。 經濟部中央樣準局貝工消资合作社印裝 通常,.DMA請求器607是設計在一 96個各用以儲存一描述 對一對應流之DMA請求的4位元值之位元場位置的陣列周圍 ,戎每一個4位元值係儲存於對應相關流之流數的陣列的一位 置内,该每一流數疋以8位元表示,而實際上只有7個位元被 使用。該7個被使用位元的最大有效的4個位元用以識別該陣 列人的列,和最小有效的3個位元用以識別該陣列的行。該每 個元儲存值包括一請求申請中之位元、2個表示優先性位 準之li元以及一表示一頁表請求位元的位元’習於本行技藝 44 - 本紙張尺度適用中國國家橾準(CNS > A4«l格( 五、發明说明(42 ) A7 B7 經濟部中央揉準局貝工消费合作社印裝 者將了解該請求器陣列可被擴展成例如128或256個流。 DMA請求器607是受暫存器rsc〇NHG01和rsCONFIG23之控 制。被載入這些暫存器的較佳場係說明於圖7中,特別鸠是, 當這些暫存器被載入時,該DMA請求器607會進行一測試, 丛決定H仍直二腿於被載入的jgjg:之申諸中的請本》苦目 前有一申請中的請求,則設定一旗標和將所有對該流的D MA 標記出來,直到達些請求被重新載入為止。該1)1^八請求器最 好已經擁有和下個傳送有關的資訊,以觸發下一個請求。 圖9中,DMA取樣雙重字元(i>^ord)位址包含一對被載入該 DMA暫存器605的雙重字元位址、在DMA引擎208抓取目前的 資料流内的最後一個取樣後,.SE旗標被設定為1,E旗標(位 元)被設定以指示已發生了一個錯誤,該SE和E旗標的邏輯OR 會標記用於目前流的任何DM請求。 藉著使在暫存器rsCONFIGO 1/23内所特定的maxDMAsize加 入下一個DMA位址以後’根據模式場内所特定的模組,一指 示器是由指經下一次的DMA交易之結束位址的方式獲得。因 此,最好在基本取樣位址位於此範圍外部時做一決定,若果 真如此’則觸發一用於此流的請求(因為任何標記已被設定之 故,其請求是連續的)》 圖10係說明一模組緩衝器1001和在DMA弓丨擎109内所實施 的不同指示器。該模組緩衝器1001包括濾波以後指向取樣位 址暫存器rsaO-3的指示器、指向緩衝器内所儲存的最接近之取 樣的指示器、在暫存器rsDMA01/23内的值之指示器、指向來 自存器rsa0-3的基本值之指示器和指向暫存器rsDMA01.23 -45- 本紙张尺度適用中國國家搮準(CNS) A4规格(2l〇X297公釐) 請 先 閱 面 之 注 r 裝 訂 A7 B7 五、發明説明(43 ) ' 内之值加上暫存器maxDMAsize内之值的指示器。這些指示器 是以一給定例的情況下以時間和指示器之間的關係之方式顯 示,且暫存器是對應於被載入該暫存器上之時間點的值。 經濟部中失橾準局負工消费合作社印装 除了當基本指示器rsaO-3通過要被充填的(或洩出的)區塊之 瘦主座iA發一 DMA請東以也上亦必頊防,該rsaOd指示器 之超該緩衝器内的最接近之取樣。基本上,達可以在當在一 波形表取樣緩衝器已被播放時或是該DMA引擎208不能保持 對目前頻道之DMA請求時才會發生。舉例而言,取樣 AGU103將會取消任何會導使-目前的取樣指示器超出該 rsDMAO 1/23以及maxDMAsize所定義的區域外部至一區域的 任何增量,而該區域對輸入緩衝器而言係對應於緩衝器下溢 ,和對輸出緩衝器而言係對應於緩衝器溢流。資料讀取將是 在未增量的位址上之資料讀取《若目前的流可因該DMA請求 而被致能時’一誤差即會經由一特殊的中斷信號以信號方式 送到主電腦中。該DMA請求器包括許多個内部暫存器,該暫 存器包括有一寬度和該流處理器100所支持的最大流數(如96 個流)一樣的申請中DMA請求暫存器陣列。如上所述,每個 元件%包含四個位元,其包括有一請求申請中之位元、兩個 DMA優先性位元和—個頁表請求申請中位元。該請求申請中 之場被設定為1,以指示一對所對應的流之資料/請求之申請 中之請求。該DMA優先性場特定對所識別的流上的一中請中 請求所給定的優先性,DMA優先姓.位元係依來自 rsCONFIGO 1 /23暫存器内之DMA優先性場之每個請求而設定 。焱I表請求申請中之場被設定為丨,以指示—對下一個頁映 -46- 本紙張尺度财ϋ目家CNS ) Α4祕(2i〇^7公爱) r (請先Μ讀背面之注t項一^寫本頁 經濟部中央揉準局工消费合作社印«.
本纸張尺度適用中國國家榇準(CNS ) A4祕(2丨〇;<297公廣) 射入口之申請中之請求要因對應的流而被讀出。 接記憶體存取以後,該DMA5丨擎2G8會通知 y成= 下個頁-映射人Π減予讀出。 該9 6個可利用的流也對應於一以元素記憶體2 〇 3 DMA描述(由DMA引擎208中斷的资料結構)開始,並且描述 流資料來源、目的地轉換尺寸和信號化。 DMA請求器607的狀態機器固定地掃描在圖6B所示的内部 DMA請求器暫存器陣列,以找出最高優先性的申請中請求( 即要被伺服的下一個請求)。當DMA引擎208完成了一交易時 ’它會以彳s號通知該請求器607,.然後使下一流的流數送到該 208上,以啟始下一個DMA傳送。取樣AGU103讀出在元素 RAM203内的特定流控制區塊中之DMA請求區塊,然後進行 下一個轉換(通常是重新補足一晶片上的FIFO緩衝器)。完成 後’該DMA引擎208在報告此DMA完成給DMA請求器知道之 前會更新元素記憶體203内的特定的流控制區塊。特別地是, 它會清除對對應被服務流的陣列暫存器之請求申請中和優先 性位元。接著該DMA請求器607繼續送出對應該優先性的下 個請求,直到目前的所有請求皆已被服務才停止。應注意在 所有的’’一般,,優先性的請求皆已完成時,該狀態機器走遍該 頁表(映射)請求位元,若發現任何有效的頁表請求位元’即 服務這些請求。如上所討論者,因為頻寬的理由,該頁表請 求之優先性最低。 鹵ΪΙ所示為雙乘法-累進單元1〇5之功能方塊圖,構成各乘 五、發明説明(45 S ^ 1 ίΓ之初級電路包括20位元x16位元之2的補數之乘法 、一 | λ /一總和向量暫存器2091、一進位向量暫存器2〇92 40位元的儲存進位加法器2093、一40位元的加法器2094 以及一組累進器/暫存器2〇95。 個奭法·累推里γΜΑΓ)同_ ^的資料上搡作’以允許則㈣取樣率轉換處理-3D的聲 獨特的左和右係數之需要以及該左和右頻道的3D聲音之 ,理亦決定元素和取樣記憶體的尺寸,在-較佳16位元之3D 一實施例中’其取樣的大小是.16位元,且其係數亦為16位 兀。習於此藝之士將知道既然該左和右頻道是同時處理的, 故而一次需要2個16位元的係數以及2個16位元的取樣,因此 元素和取樣記憶體各為32位元寬,且每個MAC皆執行平行 的16位元的操作。 炫雙乘去累進單元尚有利於實施取樣率轉換。在一 16位元 資料的取樣轉換時,以該資料相乘的係數必須以高於16位元 的解析度等量化〇因此’本架構亦可執行2Q位元χΐ6位元的 乘法作用。既然該左和右頻道之資料是以相同的係數相乘, 故自S己憶體取還的相同32位元之雙重字元可同時將2〇位元之 係數提供該兩個MAC單元2〇,或是當兩個資料字元被分別送 至每個MAC單元時將20位元的係數提供至每個MAC單元。 3D以及分開的波形表轉換之功能需求會指示一高度管路式 架構,其中為執行相乘和相加操··作時,該乘法累進單元將需 要至少兩個週波。根據本發明之原理,該提供左和右頻道之 串式處理的雙乘法-累進單元係在相同的週波内同時操作的 -48 本紙诛尺度適用中國國家標準(CNS ) Α4规格(210X297公釐)
頁 訂 經濟部中央橾準局貝工消费合作社印装 五、發明说明(46 ) A7 B7 。這兩個單元係為完全管路式的,以致於只需要一個乘法_累 進週波。本架構在例如一可能消耗50個MIP之3D處理的應用 中有其實質上的優點’在本系統中使用該雙乘法-累進單元以 做立體處理係等效於在傳統的處理器中的200個MIP。 在败皮激音樂全 請 先 閲 讀 背 面 之 注 經濟部中央標準局負工消費合作社印製 量。例如,聲量控制和濾波器切除係數之更新是以相同的速 率進行的,它需要額外的濾波以及必須執行更多的累進操作 。通常,波形表操作本質上需要不同的處理,其應用4〇位元 的指示以提供執行3D之聲音處理以及一波形表合成所需的彈 性,經由這些指示,乘法-累進單元可進)亍平行的乘法和相加 作用。 此外,在波形表合成的過程中通常需要不同型式的平行原 理,除此以外,乘法-累進亦要求平行,其具有一般目的的資 料位移以及條件式操作《—般目的的ALU104能和MAC單元 105並聯地處理資料,該ALU指示的相乘/相加場能提供波形 表合成的編碼彈性。一ALU指示場之通則尚可允許流處理器 核心100依需要而執行額外的信號處理運算。 乘法器110之輸入可以由暫存器檔1〇1、元素/係數AGU102 或是取樣AGU103中任一個提供。該雙乘法累進單元1〇5是以 一單一的指示乘以資料(SIMD)的方式被驅動,以允許做雙資 料的平行操作,如使立體音頻、複雜的或雙重精確資料之處 理更有效率地被處理。該乘法和:相加指示可以獨立地或是兩 者同時地生效。MAC-單元模式改變指令控制相乘/相加指示 之模式’在一給定的MAC單元内計算之結果被讀出經提供溢 -49 本紙法尺度適用中國@家標牟(CNS )从胁(2丨〇χ297公瘦) 項 I |〇1 5裝 旁 訂 A7 B7 五、發明説明(47) 流上之選擇性飽和之40位元的屏障移位器1〇6儲存或做進一步 的處理。一用於此雙乘法累進單元1〇5之較佳的指示組如附錄 4所示。 資料係由MAC單TL105於sp—yd匯流排上自取樣入(}1;1〇3所接 收者—’ 現羞羞^器11Q上' 乘法器1不會考咔一最 後乘積結果,而是產生總和和進位向量,然後該 總和和向量 被40位元的儲存進位加法器2093相加起來❶此可繁助儲存一 管路級和一加法器旗標,但是要自累進器中減去一值的乘積 則變得較為困難。但是,Y輸入可被反相,以致於(其伴隨著 反相在未顯示的乘法器中所使的·LSB以下的位元)產生一負的 乘積,因而使得兩個數目的乘積可以被減去。 該sP_yd匯流器首先建立γ暫存器2〇96,雖然來自該sp—yd的 匯流排會出現在X暫存器2096和Y暫存器2097上,使得乘法器 110可使該y輸入平方。累進器2095亦直接由該邛^^匯流器載 入。 sp_pd匯流排係使來自元素R0M的資料直接出現在X輸入暫 存器2096上,資料也可以經邛一辟匯流排由暫存器檔1〇1和由 特殊目的的匯流排sp_xd顯示在該乂輸入上。該χ暫存器亦由 具有單一路由器檔暫存器或暫存器對載入。最好地是該父暫 存器2096有20位元寬,以提供不同操作的精確度。本例中之 20位元係來自於sp_gx匯流排的位元31至12,其攜有一暫存器 對的上面20位元或是元素記憶體的上面2〇_位元。 MAC105的一項特徵是它可乘自取樣記憶體取擐的為線性 内福$利的資料之比例部份之能力。(對線性内插而言,以比 -50- 本紙法尺度適用中國國家樣準(CNS ) A4规格(210 X 297公釐) 請先聞讀背面之注—事項寫本頁 裝
-、1T 經濟部中央標準扃負工消费合作社印¾ 經濟部中央樣隼局貝工消费合作社印«. A7 ____B7 五、發明説明(48 ) ' 例部份和一減該比例部份之乘法可產生所需因素的其中兩個 。)取樣位址產生器103使該(例如)暫存器rsa0之比例部份經該 sp_yd匯流排送到MAC105上。 ' "" 策略單元205包含一内建的中斷控制器以及除錯器策略機構 ,ϋ盤^量式中斷以及八個ψ略。 用的向量式中斷係維持於程式記憶體2〇2中,每個策略向是包 含高達四個指示碼字元,以當發生對應的策略時處理之(基本 上是一其後項中具有暫存器儲存的分支)。此外亦提供八個中 斷向量以保持在該策略處的所需_程式記憶體位址。該八個中 斷向量最好設置在該四個40位元的指示字元的階段内的程式 δ己憶體202位址0x20-0x3F上。和·該策略類似者,每個中斷向 量包含高達四個指.示碼字元,該字元在對應的中斷被觸發時 可被執行。 中斷在某些條件下可被禁止《除此以外,當一雙重的、包 封的aluOp指示對的第一個指示被解碼時可被禁止一個週波, 和當一分支、呼叫或回復被解碼時被禁止三個週波,或是當 一乘法指示被解碼時被禁止四到六個週波。該中斷也可在使 用索引的或後增量式*的定址方法載入該 rsCONFIG01/rsC〇NFIG23暫存器時被禁止一個週波(在本較佳 實施中,直接負載/儲存和直接1〇定址不會禁止該中斷。 當一乘法指示被解碼時,一中斷禁止會發生六個週波,以 允許該碼使用乘積暫存器(它不能以一中斷服務路流的方式儲 存/再儲存)。因此’在一背景工作期間,中斷被抑能期間的 時間袅度是有其最大值的,其上界通常小於週期性的圖框週 -51 - 本纸張纽適财關 (讀先M讀背面之注項寫本頁) -裝 訂 A7 B7 五、發明説明(49 期。 一元素s己憶體負載在於元素/係數AGU内生效之前可以不採 用負載一位址暫存器r〇/3或是—增量暫存器代沁/丨之延遲的優 點,同樣地,一取樣記憶體之負載或儲存在於取樣AGU内生 '敦—支_則t叹玉^用負載一取.级技_址暫存器rsafi-3或是増量暫存· 器rsia-Ο之延遲的優點。 該策略的目的在於除錯RA1V[或是ROM存在的程式碼。該策 略各具有一策略位址暫存器(iAGUtrapN)和一策略向量(在程 式記憶體内的位址4*N)。此外在^主控制之下,也可得到一 全球性的策略致能。 · 除錯器可使用策略以實施斷點和插入碼”斷片”(snippets), 以實施偵查和探測作用。若策略被致能且指示之指示器與任 何策略位址暫存器匹配時,則一非條件式的呼叫會被插入指 示流中’以呼叫在策略向量處的碼,而非呼叫在策略位址處 的指示。同樣地,目前的中斷可使狀態被儲存起來,而中斷 被抑能。接下來,流處理器核心100開始執行在對應的策略向 量内的碼,若這是一個斷點,則此碼設定一全球變數,以指 示發生了那個策略(斷點),並且將其分支到一共用的斷點處 理器上。該斷點處理器接著會以信號通知主電腦,並使流處 理器100深睡》當主電腦獲知此中斷並且決定其原因時,它即 會以信號通知除錯器,在此除錯器的控制之下,使用者可以 一單一步驟由該深睡之中出來,:·並繼續執行此程式。在重新 儲存完此中斷致能狀態和禁止該策略一個週波以後,一來自 策'4¾[示的回復會回到策略指示上(以允許該策略指示被執行 52- 本紙乐尺度適用中國國家樣率(CNS)A4規格(210X297公釐) 閱 讀 背 面 之 注 頁 經濟部中央樣準局貝工消费合作社印製 A7 B7 五、發明说明(50) )0 附錄6宣告了一组用於流處理器1〇〇的程式控制指示β這些 指示控制條件式分支行、呼叫和回復、零〇verhead迴路、和 中斷相關者以及特殊的指示(包括策略呼叫和回復),該分支 一、一1 —叫—丄見農^零—幽中斷扭 執行以前(或是在四迴路的情形時開始執行時)皆需要三個延 遲槽。這些延遲係特定於一,,之後”條款中,該條款係特定在 所需指示被編碼後但在它完成執行之前要執行的指示佇列, 沒有任何一個要求延遲槽的指和可在另一個指示的延遲槽内 執行。既然在一條件式分支、呼叫或回復之後要充填該三個 延遲槽可能是困難的,因此提供—可特定由硬體插入的N〇p 所充填的第一延遲槽之指示編碼方法(對迴路而言不允許此選 擇)。較佳的移動/負載/儲存指令組如附錄5所提供者。 圖12A所7F為DMA控制器109結構之示意圖。一與pci主從 式/從屬式控制器的介面1201能允許該dma引擎經内部的PCI 匯沅2丨4而傳送位址和資料至/自卩〇1墊上。本介面12〇1提供位 址解碼,以對内部的DMA/中斷暫存器1201和1203做存取,以 及自PCI從屬式控制邏輯存取中斷控制信號,以允許暫存器之 讀取/寫入和SP203/204/205之記憶體的窺看(peeks)/探刺 (pokes) 〇 和SP s己憶體1204之介面可允許DMA經由内部的DMA位址和 資料匯流排(分別是14和32位元)而傳送資_料至SP記憶體和自 該SP記憶體而傳送。介面1204包含一仲裁器,以在用於DMA 傳送I存取請求和由該介面對PCI主從式/從屬式控制器所做 -53 - 本紙張尺度適用中國國家橾準(CNS)A4规格(210X297公釐) (請先《讀背面之注t事項寫本頁 :裝. *ΙΓ 經濟部中央樣準局—工消费合作社印S. 五、發明説明(51 A7 B7 經濟部中央橾隼局負工消费合作社印装 的單一窥看/探刺之間選擇》此介面1204尚包含一管路式的同 步器結構(後文將討論),以使資料由PCI時序域傳送到SP時序 域中。 該DMA暫存器1202和中斷暫存器1203包含所有可由主電腦 存―取姻MA暫存器(DMSR、HSAR、HDAR、HDMP、 以及中斷暫存器(HISR、HSRO、HICR)。暫存器1202/1203亦 包含供DMA控制邏輯使用之不可存取的暫存器,以在一DMA 傳送期間做計數位址和雙重字元計數之用。 FIFO控制器1206包含用以執扦所有的音頻轉換之控制和資 料路徑邏輯,以及一與FIFO RAM之介面。通常,該FIFO控 制器1206控制FIFO RAM、和P.CI控制器之介面以及SP記憶體 介面之間的DMA資料傳送。 FIFO RAM1207是一個單一的穩態記憶體,其結構為64個入 口 X32位元。 主要DMA狀態機器1208提供對正常的和散亂/集中DMA請 求之高階控制。此狀態機器如圖12B所示,該狀態機器係對 應於來自主電腦或SP100的請求、讀取該主電腦暫存器或SP 請求器之DMA資訊、控制DMA資料的負載和儲存(其方式是 傳出適當的信號給PCI主從介面1201、FIFO控制器1206以及 和SP記憶體之介面)、並且當傳送完成時控制暫存器/請求器 資訊之更新。其中尚有一較小的控制器,其可簡化自SP請求 器的資訊之讀取/窝入。 . 圖12Β係說明該DMA引擎208的較佳操作佇列的狀態圖。該 信發Γ的各簡述係如表10A所示。DMA引擎208可供在任何一個 請 先 閏 面 之 注 含 事 項 S〇 η 本 頁 訂 (1 -54 本纸張尺度適用中國國家標準(CNS ) Α4規格(210><297公釐) Α7 Β7 五、發明説明(52) f (請先《讀背面之注舍事項本頁 晶片上記憶體(即,程式記憶體202、元素RAM203或是取樣 RAM204)和主電腦系統CPU之間傳送資料,以及可供經由 DMA匯流排210而在他們自己的晶片上記憶體次系統之間傳 送資料。有利地是,該DMA引擎208可省去固定要在傳送中 於包括主雷腦和流處理器核100的系綠上加入任何處 需求,由該DMA所傳送的資料是在一與該每個記憶體202-105耦合的32位元之DMA匯流排209上移動,此外,該DMA引 擎208包括用以向散亂於一4096位元組之頁的主記憶體空間中 的流資料緩衝器報告存取的設偷'換句話說,在主電腦内的 緩衝器是由一主電腦内設置的頁映射表予以映射到該晶片上 DMA請求器所指向提供”散亂/集.中’’DMA機構的位置處。 订 上述之”散亂/集中”一般可以描述如下,其特定的資料結構 將再於下文敘述。在主電腦和SP記憶體202/203/204之間傳送 的每個音頻流是以一設置在SP元素記憶體203内的散亂/集中 的DMA請求器結構予以特定,該請求器的第一個八個雙重字 元包含由DMA控制器208使用以在主電腦和SP記憶體内的適 當緩衝器之間傳送正確資料量的資訊,以及可允許具有最少 要求的資料在P CI匯流上傳送的額外資訊》 經濟部中夬搮準局系工消费合作社印装 在散亂/集中式DMA期間,音頻資料被分佈於主記憶體内的 一或多個4K位元組的,,頁”上,且一頁映射表被設置於主電腦 中’該表特定這些頁的每一頁之開始的位元組位址,並且識 別一包含在音頻流内的迴路之尾λ端的頁,_此外,該表亦包含 整個音頻取樣的尾端。 為本頁表(包含每一頁的開始位址)是儲存於主記憶體 -55- 本紙铁尺度適用中國國家標準(CNS > A4規格(210X297公釐) A7 B7 炎、發明说明( 53 經濟部中央樣準局炎工消费合作社印装 中,因而每一新的入口必須在它被使用之前即已傳到該SP記 憶體中。一旦被設置於SP記憶體中以後,當它被需要時(當 DMA到達一頁之尾端和必須開始新的一頁時),即可快速地 取還。因為要將該頁表資訊由主電腦傳送到sp記憶體時需要 一『次兔此羞复二_垃.慶的系统史要相常的 時間量,因而該DMA機構以及請求器結構被設計為可允許這 些傳送可在一相當大的時間週期上的任何一個時間發生》。 特別地是,它的設計使得DMA引擎將永遠不需使一頁表更新 的完成時間少於D Μ A傳送該流略'取樣資料之一全頁所花的時 間。見圖2所示。 一般來說,只要流已開始一新.頁時,該DMA將會指示取樣 AGU103需要對有效流的下一頁做一頁表的更新。如此給了 取樣AGU103許多時間以請求該頁表DMA,因為它直到流到 達了剛才開始的頁之尾端時才需要做此請求。但是,因為迴 路開始和迴路結束之位址是在任意位置之故,該流有時會快 速地經過幾個頁,而不會提太多的時間給對每個通過頁所要 求的頁表更新。為避免此一問題,在DMA請求器中尚包括用 於S P記憶體中的每一流之額外的資訊。 除了例如雙重字元計數、來源/目的地位址和散亂/集中狀態 (PM ' LS、SS場)等的”正常的’’DMA資訊以外,還有下列的額 外資訊被儲存於請求器結構中,該額外資訊可由該DMA控制 器使用以降低其太快負載頁表入口.之需求_〇 迴路開始的位元組位址;因為迴路結束點可被設置在接近 一貢~之開始的位置上,故由迴路結束頁開始的時間到迴路結 請 先 閱 讀 背 <6 之 注
I (1 頁 订 -56- 本紙張尺度適用中國國家榡隼(CNS ) A4規格(210X297公釐) 五、發明说明(54 ) A7 B7 束頁到達的時間之中可能没有足夠的時間去負載一新的請求 入口,因此,該當流被啟始時,迴路開始的位址被儲存於請 求器中’以致於在迴路往回(l〇〇p_back)時’ DMA可沒有延遲 地繼績該迴路開始頁。 隻蜂開始後在缓置上位元組位址;同檨地,因為迴 請 先 閲 讀 背 面 之 注 經濟部中央樣隼局負工消费合作社印製 路開始點可能被設置在靠近一頁尾端的位置上,因此當DMA 迴路往回且快速地到達該迴路開始頁的結束時,可能沒有足 夠的時間載入該迴路開始頁後的頁之一新的請求器入口,因 而,此頁(迴路開始的後頁)的開·始位址亦被儲存於請求器中 〇 · - % » 在迴路開始頁後的第2頁之頁.映射入口偏離(offset);當該迴 路開始之後頁開始時,DMA即進行其正常的通知取樣AGU現 需要另一個頁表更新之行為當該取樣AGU請求一頁表DMA 時,該DMA控制器正常地會使用來自前次負載的頁表入口之 資訊來決定主頁表内的那一個索引由(流的下一頁)中傳出。 但是,在迴路往回時,DMA控制器208己跳過兩個頁表更新 ,以得到來自前文已敍述的請求場之所需的位址。因此該請 求器亦儲存用於該頁表的索引數’此數可識別用於迴路開始 後第2頁的頁表入口 °當取樣AGU在這些情況下請求一頁表 DMA,則該DMA控制器208將使用此索引找出用於該流之一 頁的頁表入口。 在操作期間,例如波形表合成,DMA引擎208負貴迴路化 ,在波形表合成時’ 一取樣被播放,為.討論起見,現假設該 取樣叉一鋼琴音符。一鋼琴音符的敲擊是獨特的’且必須被 57-
3
頁 订 經涞部中*搮準局男工消费合作社印装 A7 ___B7 (55) 捕提一般時間,但是,一旦到達該音符的成立部份時,此音 符即會以一相當規則的波形動作。此時,會產生一迴路達該 波形的一個週期,接下來所必須做的是提供一將逐漸以一鋼 琴的自然衰減之方式比例化該音符波形的音量之振幅封套。 槔曳皇贫丄&實鸪一種-里趣路會往里— 導致一取樣流,且該振幅封套操作在該流上操作。因此,在 諸如波形表合成的操作期間,可能以省去執行取樣需佔據的 幾秒鐘來對抗完全衰退的方式來降低記憶體的需求。 此外由D Μ A引擎2 0 8所做的迴路尚可以和資料與p c丨匯流排 交换(基本上是以叢集的方式發生)比較起來相當慢的速度經 加法器200而解耦合資料管路式.的處理。通常若到達當資料被 要求而該資料在記憶體内與已被儲存於缓衝器的資料不連續 之點時,問通可能就會產生了。一般來說,在本例中,緩衝 器將被平壁化(flushed)和自迴路的開始處被重新載入。藉著 使迴路化工作自DMA引擎208脫離的方式,流處理器1〇〇可自 由地處理來自PCI匯流的資料叢集,此特徵對需要取樣率轉換 的音樂合成和3D音頻處理是特別有利的。例如,3D的聲音要 求施加一具有獨特係數的高功能濾波器於左和右頻道上。 雖然資料可以8-、16-或32-位元之位元组的形式傳送,但交 易連線最好疋雙重字元的整數數目《例如,在本例示實施例 中,DMA引擎208能夠在一内部的FIFO中緩衝高達64個資料 之雙重字元,或是可包封8位元之位元組或16位元之位元组的 字元於相同的空間中,如此而允許高達256個位元組或是128 個6应元的字元被緩衝。 -58- 匕未紙適用家標準(CNS ) A4規格(210X297公釐) (锖先Μ讀背面之注告事項再填寫本頁)
經濟部中央標準局貝工消費合作社印聚 A7 B7 五、發明説明(56 ) " 雖然該DMA引擎208控制DMA的傳送,但該主電腦CPU或 是流處理器100皆可啟始一 DMA交易。該主電腦CPU可以寫 入四個已被映射於主系統的記憶體空間中的3 2位元之暫存器( 如將於下文進一步討論的HSAR、HDAR、HDMR和HDCR)的 方式請求一 DMA交易。最好該暫存器被具體地設f左該DMA 引擎208中,且可經由單一資料的PCI交易而被寫入,其中主 電腦的PCI橋式晶片是PCI主晶片,而系統200是目標。若該 傳送和主系統記憶體有關,則開始一新的PCI交易以傳送該資 料,其中加速器200是主從器,而該主電腦的PCI橋式晶片是 目標。當進行此交易時,所選定的晶片上記憶體202/203/204 被連績地經由該DMA匯流排而讀取或寫入,不管何時該記憶 體是可資利用的(不是目前正被一較高領j先性之來源所存取者 )。在傳送結束時,在最後的資料已經被寫入目的地記憶體以 後’ DMA控制器208即中斷主電腦(經由PCI介面206)或是以信 號通知DMA請求器邏輯607,以使下一個最高優先性的請求 生效。 流處理器1〇〇可在一單一的硬體DMA頻道上請求一DMA交 易’其允許多達64個字元的交易,在本例中,流處理器核心 1〇〇首先在記憶體中產生一供DMA請求器607操作的結構,接 著’流數和所希望的優先性被窝入DMA請求暫存器陣列中, 該陣列排列DMA請求之順序,以根據其優先性而服務。也可 利用取樣位址產生單元103和一條件式DMA請求來排列直接 5己憶體存取。當DMA請求被選定以供DMA請求器邏輯607服 務時’它的位址就會出現在DMA引擎208上。接著該DMA引 -59- (讀先閲讀背面之注ί項再填寫本頁) ▼0裝 訂 本紙法又度適用中國國家橾準(CNS ) (2Η)χ297公楚) 經濟部中央標隼局w;工消费合作社印製 A7 B7 五、發明説明(57 ) _ 擎讀取位指示器,並使用它來自晶片上記憶體讀取DMA請求 器結構’以產生對來源/目的地記憶體和/或PCI匯流排介面 206之請’以完全此項交易。在傳送結束時’在最後的資料已 被寫入目的地記憶體以後,該DMA控制器208即將已更新的 來的地位器結構中(若特直蓋益^兹 請求器607接收一指示目前之請求完成的信號,並在此時它以 信號通知下一個請求(若已被排序的話)。 散亂/集中式直接存取可以以一類似的方式由系統200啟始 ’逭些交易最好需要特定額外的_五個雙重字元,以描述迴路 點以及使下一個主電腦頁之位置映射到該流内。 該主電腦啟始的請求和基於流處理器的請求以一相等的優 先性被維持和以第一個進來即第一個服務的基礎儲存。此外 ’最好所有的DMA請求皆以一單元的方式執行,且永遠不會 被預先佔有。 資料是經由晶片上之PCI匯流排介面206而在主系統DRAM 和晶片上記憶體之間傳送,32位元的PCI資料被閂鎖至該PCI 介面中’以供輸入/輸出,且係利用握手信號傳送到/自DMA 引擎108傳送。 該PCI匯流排的可利用性、目標(主電腦PCI匯流排晶片)的 可讀性和在主電腦的橋式晶片内的潛伏本質可能影響PCI和 DMA的輸出。若一pci目標(如主電腦的橋式晶片)遭到了足夠 大的延遲,則它會迫使交易斷開减是終止(失敗)。若該PCI目 標只是使交易斷開,則晶片上的PCI介面206將會有利地自動 地茬''最後的未被傳送的位址上重新開始一個新的交易。若該 -60- 本紙張尺度適用中國囷家標準(CNS ) A4規格(210X297公釐) (請先閲讀背面之注素事項再填寫本頁)
•飞裝· C 訂 A7 B7 經濟部中央樣準局負工消资合作杜印製 五、發明説明(58) PCI目標使交易失敗,則全部的交易會瞬間地停止,且失去所 有的緩衝器資料。一失敗的交易代表一大變動的系統誤差, 此時PCI介面206將以中斷主電腦CPU的方式指示此現象。 對非為散亂式/集中式流而言,傳送到主電腦系統記憶體和 自.農志_隻藏_系1良爐璧皇复的..資料Y系儲存於一姑囡索_和 洩出的圓形缓衝器+的主記憶體中6然而在此情況下的?01交 易是叢集式傳送的,其範園在一組連磧的雙重字元記憶體位 址上,每當在該圓形緩衝器内的位置纏繞於開始位址周圍時 ,DMA控制器208即請求一新的pci交易。這些圓形緩衝器的 最大尺寸是設定在2014個雙重字元或是一個主頁。 散亂式/集中式流可以傳送資料至/來自散亂在多個主頁上之 主記憶體位置上。一頁映射表由該主電腦提供,以映射第— 個兩頁後之缓衝器内的所有頁。該第一個兩頁以及迴路開始 和終點資訊係包括於該DMA請求器陣列中,此頁資就由流處 理器以使用該DMA請求器邏輯内的低優先性請求之方式而刷 新,如此可有利地使較高優先性的交易免於因頁表讀取而被 延遲。 如前所簡略討論者,該DMA引擎208包括一組可以由主處 理器經PCI匯流排而寫入的暫存器,一DMA引擎208所提供的 較佳DMA暫存器如表10B之列表所示。 兩個獨立的DMA頻道被提供,特別是主電腦DMA頻道以及 信號處理器DMA頻道。這些頻道:將各於下文詳細描述之。 該主電腦DMA頻道是受到主電腦DMA暫存器HSAR、 HDiR、HDMR和HDCR之控制。最好該暫存器各為一實際設 -61 - 本紙張尺度適用中國囷家榡準(CMS ) A4规格(2丨〇‘乂297公釐) ------,--1 裝 II C {請先閲讀背面之注事項再填寫本頁) 訂 B7 五、發明説明(59 ) ~ 於DMA引擎208内且被映射到主電腦cpu的記憶體空間中的 32位元之暫存器》 ^電腦可寫入的32位元主來源位址暫存器(HSAR)允許使用 者定義可被使用於一主電腦啟始的DMA交易之來源記憶體的 位扯如圖所彔,並中岡 13A顯示當主電腦是來源時之場示意圖和圖13B顯示當加速器 200是來源時之場的示意圖。有關該HSAR場的簡略敘述如表 11所示》HDAR暫存器允許使用者定義用於一主電腦啟的 DMA傳送之目的地記憶體。圖係說明當主電腦是目的地 時之HDAR暫存器場,和圖13D說明當.該加速器2〇〇是目的地 時之場。表12展示一較佳的編碼方法。 圖14所示為用於主電腦〇1^八暫存器(HDMR)暫存器之格式 圖。此暫存器定義如被用以操控資料的傳送模式之元素,以 及疋義會在X易結束時產生的本質頻道信號之產生。表13顯 示了 一較佳的位元編碼方式。 經濟部中央樣準局負工消费合作社印製 主電腦DMA控制暫存器(HDCR)被用以描述幾個用於一主電 腦啟始的DMA交易之元素,如來源和目的地記憶體位置以及 模組緩衝器尺寸〇其尚包括可使來源和目的地位址暫存器選 擇性地窝回之位元以及一致能最佳化的16/32雙重字元存取模 式之位元。此外尚致能一場,以特定要被傳送的雙重字元的 數目(由1-64) »寫入此暫存器的方式可自動地導使一主電腦啟 始的DMA請求。圖15顯示一用於:該場/暫存器的一較佳格式和 表14所示為一對應的編碼方法。 ί Γ6以及對定的表15係描述用於DMA狀態暫存器(DMSR)的 -62- 本纸張尺度適用中國國家標準(CNS>A4规格( 210X297公釐) A7 B7 五、發明説明(60) 格式編碼方法。此暫存器是一主電腦可讀取的暫存器,其包 括兩個狀態位元,以用於兩個DMA頻道。當一傳送動作在一 給定的頻道上請求時,一對應的申請中位元被設定為丨,既然 所有的交易沒有中斷的執行,故一旦一運作位元被設定了’ 它即不到交易完成為立」在給皮赴交 後,用於該頻道的申請中和運作中之位元皆會被重設為〇。主 電腦可讀取此暫存器,以決定那個DMA頻道具有申請中的請 求和那一個頻道目前正在運作。此外,主電腦可以圈選此暫 存器,並監視HP位元,以利用务易結束時會被中斷的方式來 決定其自己的DMA交易何時完成·。 _ 信號處理器DMA頻道使用它自.己的DMA請求器結構,其包 括有來源和目的地位址、記憶體識別器和模組緩衝器尺寸、 傳送模式和雙重字元計數(丨_64個雙重字元)。基本的請求器是 四個雙重位元長,且可特定任何非散亂式/集中式請求。另需 要一額外的五個雙重字元以支持散亂式/集中式請求,並含有 所有SP啟始的DMA請求所共用的雙重字元。圖17A至17K說 明一較佳的流處理器DMA請求器結構,圖17A說明對元素 RAM203的一例示位址,它最好是啟始的位址。圖17B說明在 啟始位址加1處生效的字元之目的地位址。在該啟始位址加2 的位址處,來源位址被生效,若來源是主記憶體,則主位址 字元之形式如圖17C所示,否則若來源是在一DSP記憶體中, 則來源位址字元如圖17D所示。. _ 在啟位址加3的位址處,一目的地位址字元被生效。若目的 是在_主記憶體内部時,該目的地位址將採用圖17E所示的格 -63 - 本紙张尺度適用中國國家橾率(CNS > A4規格(ZIOXW7公釐) (請先W婧背面之注 — 項再填寫本頁) i 經濟部中央搮準局負工消费合作社印窠 A7 B7 五、發明説明(61 式’若目的地是在一累進器200記憶體内,則該目的地位址字 元採用囷17F所示的格式。
該額外的DMA請求器雙重字元只使用於散亂式/集中式 DMA中。在啟始位址加4的位址處,定義記憶體中要被存取 的工二字元被呔敛,帚将如圃ΠΓτ所示。在啟 始位址加5的位址處,下頁控制字元被生效,如圖17Η所示。 圖171係說明在啟始位址加6的位址上所生效的迴路開始位址 字元。在啟始位址加7的位址上,在該迴路開始的字元後的下 一頁被生效。最後,在啟始位址如8的位址上,則定址到包含 該頁映射表之頁上’且定義一用於迴路開始以後之第二頁的 頁映射樹偏離。 經濟部中夫梂隼扃貝工消费合作社印裝 來源和目的地記憶體位址的記憶體所使用的位址場係依據 Η和DH位元如何被設定於DMA控制字元/暫存器的方式特定 主系統記憶體或是加速器20的記憶體位址。選擇主記憶體, 則全部的32位元字元以一主位元组位址被轉譯為一主位元組 位址,當晶片上記憶體是一加速器2〇〇時,請求器字元則包括 一選定為適當的晶片上記憶體的一記憶體10場和位元組位址( 來源或目的地)’並且以位元組的方式定址該記憶體。若Dsp 位址而言,ERR和END位元提供一誤差和取樣結束之旗標, 記憶體ID位元係用以定義那個記憶體202-105正被定址,一較 佳的記憶體ID解碼如表16所示。DSP位元組位址特定用於一 為位元組形式的給定記憶體之位··址》有利地是,此定址的方 式可允許一 32位元的位址映射高可達40G位元組的最大主記 憶體 寸以及一 64K位元组的DSP記憶體尺寸。 -64 本纸依尺度適用中國國家標準(CNS ) A4规格(2丨0X297公釐) A7 B7 五、發明说明(62) 被載入該主電腦DMA暫存器和流處理器請求器内的來源目 的地位址係被假設指向位於主電腦尺八14内或是在如上所特定 的晶片上記憶體202-105内的記憶體緩衝器内部的開始位置上 β_Γ於表17内定義的3位元場定義了以雙重字元特定的模組緩 缓衝器的尺寸,sms县目 的地模組緩衝器的位址,請見表17所示)^第一個選擇(000)指 出緩衝器不是圓形的,且定址應連續地經記憶體進行,直到 父易元成為止。另一個選擇將使此交易圍繞緩衝器的開始位 址(最小有效位元為〇),此時,位址跨越一給定大小的緩衝器 之邊界,範園由16-2014。 · . 翅濟部中央梂牟局WC工消費合作社印製 --y^-- (請先閲讀背面之注含事項k寫本頁} 訂 一4位元的音頻轉換(AC)場(圖ΠΒ)定義音頻資料在一 DMA 交易期間被寫入目的地記憶體之前如何地被轉換。位元〇是用 以定義8-或16-位元的音頻轉換,其中音頻資料的每個位元組 被添加具有一0位元組的最小有效位元的結尾上,以形成一 16 位元的字元》位元1是用以進行單音至立體音的轉換,其中音 頻資料的每個16位元的字元被複製(寫入兩次),以將單一音 頻的資料轉換成立體的格式。位元2係定義一大至小的⑶出犯 轉換,其中每個被寫入的16位元的字元使其低的和高的位元 組被纏繞,以將進入的位元組式的大_endian音頻轉換為小_ 音頻,或反之。位元3定義已標識的/未標識的轉換,其 中每個正被寫入的16位元字元使其最大有效位元轉換,以將 進入的未標識音頻資料轉換為已標識的格減,反之亦然。 8位元的資料首先被轉換為16位元的資料, 複r,以產生立體的資料,接著每個字元的 • 65-
五、發明説明(63 A7 B7 經濟部中央樣準局負工消费合作社印*. 小-和大-endian格式之間轉換。最後,每個最終字元的最大有 效位元將被轉換,以在已識別的和未識別的格式之間轉換。 系統200内的中斷是以該裝置内的—,,虛擬頻道”機構予以支 持的。自一模組緩衝器讀出或寫入該緩衝器的每一流被指定 為 一 ”ΑΜϋΜϋ蓋】财麵 引擊208在任何時候模組緩衝器指示器通過中點或被圍繞時以 h號通知的。當某些虛擬頻道被以信號通知時(例如頻道〇-15) ,則觸發主電腦的中斷,如此即可立即地以信號通知緩衝器 的情況。該虚擬的頻道是用以發定一虚擬頻道信號化位元, 此位元可以由主電腦在一稍晚的時候讀·取之。由信號接收器 在一虛擬頻道被信號通知時所採取的動作之摘要已顯示於表 18中。 對所有的DMA請求器而言,2位元VSM場(圖ΠΒ)係特定是 否或何時以信號通知所特定的虛擬頻道有關DMA交易的完成 。表19描述了該VSM場的不同設定方式。雙重字元計數場(圖 17A)特定用於該交易的雙重字元之數目減1 ’因此,〇的值將 傳送一雙重字元、1的值將傳送兩個雙重字元等》所有的 DMA交易皆伴隨有可高達1〇24個雙重字元的最大轉換大小的 整數個32位元之雙重字元β 在DMA控制字元(圖17Α)内的OPT位元被用以選擇用來決定 在每一 DMA請求時所讀取的雙重字元的數目之最佳模式此操 作模式是用以減少用於例如波形表合成的i喿作之瞬間的PCI匯 流排交易速率的變化。特別地是,最佳方式可確使在一給定 的產每迴路期間可以在PCI上傳送的雙重字元的最佳數目。這 請 先 閱 之 注 TI, 裝 訂 66 本纸银尺度適用中國國家榡準(CNS) A4规格(210X297公釐) 經濟部中央標準扃系Η消费合作社印繁 A7 B7 一 一 五、發明説明(64 ) 些取樣可以是8-或16-位元寬,JL他們特定取樣重覆直到音符 被釋放為止的情況時之任意的迴路開始和終點。 圖18所示為當最佳化模式被抑能時由任意的迴路點所導致 的問題》本例中,在單一的PCI交易期間,於每個DMA請求 時被锗出16個勢重字元.,闵灰迴H東點不是DMA控制器· 208所預期的所致,因此該DMA控制器必須啟始兩個PCI交易 ,以滿足一通常只需要一次交易(當未遇到迴路終點時)的 DMA請求。第二個PCI交易變得必須,因為一PCI交易必須以 一單一的開始位址開始,因此,-為啟始一只對被切除的資料 之存取時,必須使一新的位址生效。換句話說,一迴路係任 意地在一DMA請求的期間開始’.更特別地是,在一DMA請求 期間結束;為滿足結束的DMA請求,必須在最後的迴路結束 點處額外的請求和PCI交易使雙重字元被切除。同樣地,當一 取樣延及主記憶體内的頁時,也可能發生問題,在此情況下 ,該頁的邊界(如迴路結束的位置)不是預期的,因此,當該 頁邊界到達且申請中的DMA請求尚未完成時,可能需要一額 外的PCI交易。 根據本發明之原理,每個迴路終點係與一偶數的16-或32雙 重字元的邊界對齊,接著DMA控制器208可以依與適當的16_ 或32雙重字元邊界對齊為基礎而彈性地選擇一不同的交易尺 寸,以使每一迴路有最佳的請求數目。特別地是,程式設計 者可特定在正常的雙重字元計數場内的每一DMA交易期間可 被讀取的最少數目之雙重字元。接著當OPT位元被設定時, DM*X引擎208將讀取特定的最少雙重字元和最多18個雙重字 -67- 本紙铁纽财國S家縣(CNS ) Μ规格(21QX297公度) (請先Μ讀背面之注秦事項再填寫本頁) 訂 A7 B7 五、發明説明(65 ) 元(若特定的最少數目為16時)或是最多36個雙重字元(若特定 的最少數目大於16時)之間的雙重字元。依此方式,該DMA 引擎208可確使當到達一迴路之終點時不會再有額外的請求。
訂 圖19A係說明在該最小雙重字元計數為15時在最佳的16雙 重字元模式下迴路取樣的回播方式。如圖18所示,在乘最佳 化的情況下,有一為四(4)的偏離’,_在圖19A所示的最佳情況 下,在四次DMA請求以後,迴路端點已和一 16雙重字元的邊 界對齊。其偏離是由觀察該DMA請求器對主電腦所生效的位 址的方式所決定的,本例中係個:設該位址是到主記憶體的位 址(來源或是目的地)。最好使用·5 : 2的·位元來決定目前的替 換模組16,接著選擇每一請求中·有最小數目的雙重字元(本例 為15)。因為最小值低於16,故每一請求中的最多雙重字元的 數目將自動設定為18,該對齊所需的最大請求數目之計算如 下: 要對齊的最大請求數目=max 此係對16雙重字元的模式而言。 而對32雙重字元的模式而言,對齊的最大請求數目為: 要對齊的最大請求數目=max 經濟部中央標準局貝工消费合作社印装 總地來說,最佳化只依雙重字元的最小數目之規格以及主 電腦所知的現有DMA位址而定。 圖19B說明在該最小的雙重位元計數被設定為14時,相同的 取樣流的回播方式。應注意該最小值被設定的愈低,對齊愈 快發生。本例中,在兩次DMA讀取以後,即達到對齊。 ®乏0係例示一包含一跨越三個完全的記憶體頁之迴路式區 -68- 本紙張尺度適用中國國家橾準(CNS > A4说格(210X297公釐) A7 B7 五、發明説明(66) 間的資料取樣,以說明根據本發明之原理的散亂式/集中式 DMA能力的操作方式。如上已簡要說明者,頁邊界(如同迴 路終點的位置)不是DMA控制器208所預期的’因此當到達頁 邊界時,為滿足一請求,可能需要兩個PCI交易。當頁在雙重 孛元處已經對#者」可於此處直甩I定I値I求的字又範凰~ 以及允許DMA引擎208在該範圍内改變每一請求的字元之技 術。 訂 如前所討論者,在圖17A-K中,請求器字元被擴展以支持 散礼式/集中式的特徵β PM場(圖Ί7Α)是一指示對下一頁映射( 表)入口的申請中讀取的旗標,LS場(圓17A)指示迴路結束的 DMA狀態、SS場(圖17A)指示取樣結束的DMA狀態、和SSG 場(圖17A)是一指示來源是否是一散亂式/集中式緩衝器的旗 標。DSG場表示是一指示目的地是否是一散亂式/集中式緩衝 器的旗標,SV迴路場(圖ΠΒ)維持用於迴路往回的虚擬信號 化旗標,且LF場(圖ΠΒ)是迴路化旗標。表20所示是該Piv[場 的較佳編碼結果,表21所示是該LS場的解碼結果,表22是該 SS場的編碼結果,表23是用於該LF場的編碼和表24所示該SE 場的編碼結果。 經濟部中夾揉準局員工消费合作社印製 該DMA引擎208可用以包封、解包封和駕馭以幾種不同的 方式傳送的資料。在DMA暫存器/請求器(圖17B的例子中是一 請求器,而在圖14的例子中是一主電腦DMA請求)内的AC場 可允許在被傳送的資料上做特殊:的操作以在不同的數位式 音頻資料之間轉換。可改變的選擇的目的在於使幾種不同的 音蘋為式轉換為信號處理器核心100所期望的格式(例如16位 -69- 本纸张尺度適用中國國家搮準(CNS ) A4规格(2丨0x297公釐) 經濟部中央樣隼局貝工消费合作社印製 A7 B7 五、發明説明(67 ) _ 元的立體的、小端區已標識的音頻資料)。圖21A和21B分別 顯示在32和40位元的記憶體之間的傳送,特別地是,圖21A 顯示一32位元到32位元的轉換,而圖21B說明使來自一 40位 元記憶體的40位元字元到一32位元記憶體的基本轉換。 圖22A-22H係說明在32位元的記憶體之間所做的某本的音 頻資料轉換。圖22A顯示在不需要對以一小端區格式傳送的 16位元立體資料做轉換的情況,圖22B顯示由16位元的立體 大端區轉換為16位元的立體小端區的傳送例,圖22C說明由 16位元的單音之小端區轉換為16位元的立體之小端區的傳送 ,圖22D說明由16位元的單音、·大端區轉換為16位元的立體 音、小端區時之例示的傳送方式,圖22E說明由被標識的8位 元的立體音轉換被標示的16位元之立體音、小端區時之傳送 ,圖22F例示由未標識的8位元立體音轉換為被標識的16位元 立體音時的傳送方式,圖22G所示為由標識的8位元單音轉換 為被標識的16位元立體音的基本轉換方式,圖22H則說明由 未標識的8位元單音轉換為已標識的16位元立體音時之傳送。 圖221所示為用以執行圖21和22所顯示的資訊操控之較佳電 路2200之原理方塊圖。DMA控制器208負責在PCI介面206和 32位元的SP記憶體202/203/204之間傳送32位元的資料雙重字 元,此DMA控制器208允許主電腦記憶體内之位址,且SP記 憶體被特定為位元組位址,而不要求所有的所有的位址要與 雙重字元(32位元)的邊界對齊。因.為在PCI匯流上傳送的資料 必須和主記憶體内的一雙重字元的邊界對齊(每個PCI匯流排 規袼ΐ且被傳送到S P記憶體的資料必須定址雙重字元的品質( -70- 本紙張尺度適用中國國家標準(CNS ) Α4規格(210X297公釐) (請先Μ讀背面之注秦事項再填寫本頁) 0 訂 A7 _B7五、發明説明(68) 經濟部中央橾準局貝工消費合作社印製 它是一32位元的記憶體)之故’在傳送期間,一用於左和右位 移32位元X0、1、2或3位元組的機構是需要的。此可允許一 給定的位元組或多個位元組由主記憶體内的任何位元組發出 ’且被傳送到SP記憶體内的任何位元組位址上,縱使資料路 徑始終县一次係送32個位_______ 就在資料進入FIFO記憶體之前以及就在它離開該FIFO記憶 髏以後,該資料會經過如囷221所示的電路2200。每一多工器 2201在兩個或多個8位元的品質之間選擇,並且輸出一單一的 8位元品質。當該FIFO正被充填時,資料會來自該PCI介面 206或是SP記憶體202/203/204 ’ ·且當FIFO正在洩出時,資料 會來自該FIFO RAM。四個多工·器2201的第一組在這三個輸 入之間選擇,AND(及)閘2202可允許8位元的位元組被選擇性 地做記號》 該多工器2201的第二和第三列在一結構中互連,而允許輸入 資料在任一方向位移0、1、2或3個位元組,此通常可以一稱 為一屏障移位器的常被使用的電路達成。該電路不是一個屏 障移位器,但是是一個可允許資料在它被位移的同一時期被 做音頻轉換》 音頻轉換需要某些輸入位元组被複製於輸出上(以轉換單音 成為立醴資料),需要不同的位元组在相同的時候位移不同的 量(以轉換8位元為16位元的音頻),以及需要能以一,,零,,位元 组取代一或多個位元组的能力。 二複雜的控制電路被提供(未顯示),其操作可產生如圖21 和22>斤示的佇列’該電路控制在每個多工器22〇丨上的選擇行 •71 - {請先Μ讀背面之注 tt C 項再填寫本Ϊ 訂 五、發明説明(69) ,並允許資料路徑被位移一或多個 時地依需要而路由該位元組,^^ ’而在此時亦可同 32位元的暫衫勘㈣以— 以使得位元組可以在連續的雙、' ,雙重子元, 間聯合起來,以產生 在電路2200中,所有的音頻轉換皆口铲左- 成。在該FIFO的充填期間,資料//^jFIF〇戌出期間完 憶體内(主電腦或是SP記憶體⑷、疋2\3位償來源記 FIF0:出期間,資料被左移(和一位元組偏離對齊偏:J 轉換成一新的音頻格式(如果需要的話並且被 圖23所示為加速器2〇〇的記憶.雜系統之—較佳映射 4圖23所示者,為DMA之故,整個記龍系統可 = 一单一的記憶體空間。 破视為 圖24所示為該加速器200的一上平面視圖,以說明 2_插腳之PQFP,在此平面圖所示的輸出插腳的功 述於表24A-24D中所提供者,以供參考。在下文的討产田 皆假足在圖24中顯示的腳輸出以及表25内之對應的描$。奶 於本行技藝之士將了解具體的結構以及功能和‘語$二改$ 的。 < 經濟部中央捸举局負工消费合作社印* 串接式的10埠207(圖1)提供進入加速器200和出去加速 200的數位的音頻資料路徑,因為加法器2〇〇的主要功能是 以處理不同型式的音頻資料流(钶如直接聲音緩衝器、人成2 音流)。有利地是,輸入/輸出埠207可允許幾種操作模式,= 便罷~支持一多系統和晶片的結構。 以 -72 6紙張尺度適用中國國家梂準(CNS ) Α4规格(2丨ΟΧ297公釐)
發明説明 β、207疋由—組初級的輸入/輸出埠、一對輔助的輸出 直凰ααΪ控式的時序和控制埠。該初級的輸入/輸出埠包含一 軲y*立接式資料插腳組’而該輔助痒可使高達四個之多的 t曰類輸出流以兩個立體流的方式埠接。值得注意地,該 , &輸入轉多工。_ 經濟部中央樣隼局貝工消费合作社印笨 圖25A係顯示該初級的串接輸人和輸淳之原理方塊圖。該 :級r輸出埠包括—組先入/先出的暫存器2刪 ,以使自該流 «*理器loo所收得的資料管路化,由輸出取樣fif〇26〇〇管路 化的資料在經由該埠時序和控M26〇6而 出現的指令位址和資 =的控制弋下’提供到一資料移·位器,格式器26〇1上。串接的 貝料然後由該移位器/格式器26〇1經該串接的輸出埠 (SDOUT)2602而輸出。 資料是經由串接資料輸入埠(SDIN)2603而接收,所收到的 資料接著通過一移位器/資料取出器26〇4,接著最後取出的取 樣被供至輸入取樣FIFO2605中。該輸入取樣FIFO2605的輸出 伴隨著狀態位址和資料而被送至該流處理器1〇〇中。該經過初 級的串接輸入之資料的時序和控制是由和串接輸出區塊共通 的一埠時序和控制電路2606所控制。 該輔助輸出埠的較佳組構如圖25B所示。第一輔助的輸出埠 (輸出蜂2)包括一輸出取樣的先進先出記憶體2607以及一移位 器/資料格式器2608。該移位器/資料格式器2608的輸出是受 一多工器2609的控制,此多工器:2609可使串接的資料和遊戲 搖桿資訊經由一單一接腳(jABl/SDOUT2)2611而多工,該輔 助出埠亦受到埠時序和控制電路26〇6的控制。 -73 本紙張尺度適用中國國家標準(CNS ) A4规格(210X29*7公釐) 請先閲讀背面之注4m*項寫本頁)
.1T
-Jfc /SHV A7 ___B7 五、發明説明(71 ) ' 經濟部中央搮隼局貝工消费合作社印装 第二輔助輸出埠(輸出埠3)的結構係類似於輸出埠2的結構 。此輸出埠3包括輸出取樣FIF02611、一移位器/資料格式器 2612和一多工另一個1〇接腳(JAB2/SDOUT3)的多工器2613 β 圖25C係說明該輔助輸入埠的一較佳結構。該亦是由埠時序 和控射|^2606時序化的梭跋輸_入』隼包括一释多工器 接收資料的移位器/資料取出器2615,該多工器2616多工10接 腳2617(SDIN2/GPIO),該腳係用以接收串接的輸入資料或者 被用以作為一通用的輸入/輸出接腳。 圖25D所示為強調對串接埠207的時序輸入和輸出的更詳細 之方塊圖。其時序產生方式將於下文再做進一步討論。腳 2619(ABITCLK/SCLK)最先是用以交換用於串接式音頻資料 的主從式時序,當加速器200和一IntelTMAC,97 Codec共同使 用時,此腳2619即自該AC’97 Codec接收位元率時序,當該加 速器200與一音頻母板共同使用時,該腳619自該音頻母板接 收一串接的音頻資料時序。在外接式的DAC結構中,該腳 2619可用來輸出一串接式的位元時序。 腳2620(ASYNC/FS YNC)係用以做串接式音頻資料的圖框式 時序之交換。在使用一 AC’97 Codec的結構中,腳2620是一定 義用於該AC97之鏈結的圖框式之輸出。在音頻母板的結構中 ,該腳2620則是一用以接收圖框同步化信號FSYNC。在外接 的DAC結構中,該腳2620是一用以提供LRCLK圖框時序的輸 出。 ’二. — 腳2621是一多工化的接腳,它接收來自遊戲搖桿B(按鈕1) 的訊。對非為AC97的Codec系統結構而言,本接腳2621被 (锖先閲讀背面之注素事項再填寫本頁) tt •nm· 訂 -74· ^紙張尺度適用中國國家揉準((:奶>八4規格(2丨〇><297公釐1 A7 B7 經濟部中央樣準局貝工消费合作杜印製 五、發明说明(72 用來輸出一交流的囷框化時4LRCLK,以用於輔助的輸入埠 SD0UT2 和 SD0UT3。 腳2622做為用於遊戲搖桿B(按鈕2)的一輸入接腳,在非為 AC97的Codec系統加構上,該接腳2622在被致能時,被用來 ϋΑ__________________ 圖26A是一說明加速器200之作用如同一音頻母板上的PCI 加速器時之結構的原理式連接圖。在本例中,加速器2〇〇被耦 合於一Crystal Semiconductor 42373b ISA Codec 2700上。此時 ’鏈結取樣率是44.1KHz,和鎖相迴路時序來源以2.822MHz 的速率提供一 SCLK,最好該ISA C〇d6c2700是本結構的主從 元件。在圖26A的結構中之主從.式時序源是一個16.9344MHz 的可英振盪器,由加速器200的PLL/時序控制部份提供以產生 内部時序的串接式位元率時序(SCLK)將於下文進一步討論。 圖26B係顯示選定的時序和信號之時序圖,以證明在圖26A 所示的結構裏,在該Codec和加速器200之間的典型時序和信 號之互換方式。再次說明,該圖框同步化信號FSYNC是以一 固定的44·1ΚΗζ(此頻率是鏈結取樣速率)運作,SCLK是以 2.822MHz(提供一 64X之取樣率)運作’在圖26B中所示的時序 和信號之解釋和說明可見於表26中。 在圖26A以及圖26B所示的結構中,輸出格式是每個輸出頻 道(左和右頻道)為16個位元,首先是MSB(最大有效位元),然 後在輸出取樣之後為裝填之〇的16位元。該MSB位移最好是以 和FSYNC信號内的暫態相同之時序而輸出。在FSYNC之升緣 時差%道輸出,而在FSYNC之降緣時右頻道輸出。加速器 -75- 本紙張尺度適用中國國家標準(CNS) A视#·( 210X297公瘦} ------ί--、裝-- (讀先閲讀背面之注t事項再填寫本頁) 订 Λ, 五、發明説明(73 ) A7 B7 經濟部中央樣隼局貝工消费合作社印衷 200串接輸出埠的目標是對C〇dec27〇〇的串接輸入埠。 加速器200初級串接輸入埠在囷26A的結構中被致能,輸入 格式由兩頻道内(左/右)的四個資料場構成,最好地是,對左 頻道資料而言,第一個16位元的DAC資料是首先收到的MSB ’然後dac资料被放,亦县τντςκ帚先。棬下辛, 右頻道資料(另一個ADC/DAC對)被位移進入該串接式輸入埠 中,左頻道由FSYNC之邏輯為高時給予圖框化,右頻道則是 在FSYNC之邏輯為低時給予圖框化。在此結構中,輔助的輸 入和輸出埠是不需要的。 — 圖27是圖26Α中所說明的結構選擇之另一種解釋。在此情 況下’使用兩個數位類比轉換器28〇〇a*28〇〇b以舉例說明。 該數位至類比轉換器2800是(例如)Crystal Semic〇nduct〇r的 433x數位至類比轉換器。在圖27之結構中的加速器2〇〇之作用 如PCI加速器,以用於一共同存在的多媒體音頻次系統中如 Crystal Semiconductor的4237B母板,其具有一組額外的立體 DAC。一用以說明圖27中之結構的基本操作的較佳時序圖如 圖28所tit ’其對應的信號之簡要描述如表27所示。 在圖27所示的系統中,該初級的串接輸入和輸出埠之結構 和功能係如上所討論的圖26A之結構中所說明者。但是在圖 27之實施例中,串接式輸出2(圖25B)亦被致能和其操作如圖 28所示者。輸出格式是每頻道為16位元,MSB最先、然後是 在輸出取樣之前的裝填之〇的16個位元_,最好該MSB是在 FSY^C之暫態後的輸出的16個時序週期。左頻道在1/11(:1^:高 時备出和右頻道在LRCLK低時輸出,輸入輸出痒2的目標是 -76- 本紙张尺度適用中國國家標準(CNS )人4規《格(210X297公釐) (請先Μ讀背面之注f項再填寫本頁) -^^1 · 1.. 装. 訂 經濟部中央樣準扃負工消费合作社印裝 Α7 _Β7 五、發明説明(74 ) ' DAC2800的一選定之一的輸入。 串接輸出埠3與另一個在圖27之結構中所提供的DAC2800耦 合,且被致能。該串接埠3的操作係類似於串接輸出埠2的操 作,在本結構中’第二串接輸入埠(即串接的輸入埠2)是不使 见 H._e—_______一 圖29係說明一具肴加速器200的AC,97 Codec之互連方式》 在本例中’鏈結取樣率最好為48kHz(PLL時序來源),時序AB 1丁0^是以12.2881^112運作。最好地是,該(:〇<^2800由一24. 576的石英振盪器中提供主從式的時序信號。 圖30係顯示該加速器200的進“步結樣的可能性。在圖3〇之 結構中’加速器200之作用如同,”直接聲音,,的加速器。此時 ,該加速器200驅動三個數位至類比轉換器2900,該轉換器最 好各是一Crystal Semiconductor的433x數位至類比轉換器。在 此情況下’時序是由加速器200因應於來自一 12.288MHz的石 英振盪器之主從式時序而產生的。最好該用於圖3〇之結構的 鏈結取樣率為48KHz。 輸入/輸出埠207是由設於加速器200内部的暫存器組選擇性 地建構和致能。為利於下述討論起見,現假設上述所有舉例 的四個結構皆可被支持,習於本行技藝者將了解若希望的話 ,這些可利用的暫存器也可以支持其他的結構。 圖31是串接埠主從式控制暫存器1的較佳示意圖。該暫存器 包括用以致能和抑能輸入/輸出串-·接埠功能和用以控制經1〇蜂 207而傳送的資料之時序的位元’本圖31中的串接崞主從式幹 制##器之位元場的簡要位元說明現已說明於表28中。 -77- 尺度通用?國國輯準(CNS ) A__ ( 270X297公釐Ί ---
A7 __— __B7 五、發明説明(75 ) 一 串接埠主從式控制暫存器2(SERMC2)係原理式地描述於囷 32中’該囷32顯示的串接埠主從式控制暫存器之位元場的簡 要描述係如表29所示者。一般而言,在此暫存器内的位元致 能和抑能用以選擇MCLK頻率的LRCLK和MCLK時序輸出。. i—3串接埠結椹塹在器(srr m )的#分.蜂丄 存器控制初級輪出埠的結構,其包括致能和抑能初級輸出埠 (OUTPUTl) ’並定義資料輸出格式。該暫存器位元場的簡要 敘述亦說明於表30中。 圖34中的_接埠結構暫存器2哆ERC2)係類似於初級輸入埠 ’它包括致能初級輸入埠(INPUT1)和定·義要藉該初級輸入埠 而接收的資料°圖34所對應的簡.要位元敘述如表31所顯示者 〇 圖35係說明用於串接埠結構暫存器3(SERC3)的位元場,此 暫存器控制在致能辅助的串接輸出埠(OUTPUT2)時的結構。 其位元場功能之簡要敘述可見於表32A。 曰圖36A —般係說明用於串接埠結構暫存器4(SERC4)之位元 場’表32係描述儲存於此串接埠結構暫存器4内的位元功能, ~般來講’此暫存器可致能第二輔助輸出(OUTPUT3)和定義 用於孩蜂的輸出資料格式。用於此暫存器的位元場如圖31B 所提供者》 圖係說明串接埠結構暫存器5(SERC5),一般來說此 暫存器控制輔助輪入埠(INPUTPORT2)的結構,其包括有致能 和輸_入資料格式的定義 。每一位元場的功能簡要說明如表33 所示。 -78- A7 B7 五 '發明説明(76 加速器20 0可作為一外部的串接式EEPR Ο Μ記憶體次系統的 介面,其可提供供電(power-up)的結構資訊。圖37所示為一強 調在該加速器200和一串接的EEPR0M3800之間的連接的原理 上功能方塊圖。當該EEPROM3800以一單一區塊說明時,它 實際上可能是由一或多個分開的装置捸槿而成,應注意當ι — 需要該串接式EEPR0M以供加速器200的適當操作時,它可能 被要求支持特定的操作系統之相容性需求。例如,它可包含 供應者和部分ID場,使得主電腦軟體可適當地建構,若一串 接式EEPR0M不出現時’加速器-200通常會被致能,以在pci 匯流上使用,且在此初級的結構·暫存器中的次系統ID場(ID和 供應者的ID場)被設定為0。 一外部EEPROM的出現是以企圖載入並且檢查在供電時的 有效頭引的方式偵而得。一所使用的簡單之兩接腳連接如圖 37所示,其中串接的時序EECLK被交換到EEPROM3800上, 串接的資料10被經由EEDAT接腳而交換》 經濟部中央標準局貝工消费合作社印製 f諸先«讀背面之注4$事項再填寫本頁)
OI 加速器200只有在一硬性重設或在供電時才會存取該 EEPR0M 3800。特別地是,該加速器200只讀取來自該 EEPR0M 3800的資料;寫入該EEPROM3800是以使用在本結 構介面暫存器内的PCI匯流排EEPR0M存取埠的方式達成。在 時序和資料之間的一較佳的最小時序關係如圖3 9所示。最好 地是’在資料線上的時序只當時序線為低時才改變,本例中 在時序時間為高的期間内,在资料線(EEDAT)上的狀態變化 用以指示開始和停止的狀況。 鹵5〇係說明來自EEPROM3800的一較佳的讀取存取彳宁列。 79 本紙張尺度速用中國國家橾準(CNS)A4規格(210X297公釐〉 五、發明説明(77 A7 B7 時序通常是跟在一隨機讀取的佇列之時序後。該加速器200首 先進行一 p亞式(dummy)的寫入操作、產生一開始情況,接下 來是為零的從屬式裝置位址和位元组位址。該從屬式位址是 由一裝置識別器(〇xA)和一庫選擇位元組成,該庫選擇位元由 EEPROM裝置的八個256位元組區塊中選擇,該庫選擇直元也 請 先 閲 面 之 注 經濟部中央橾準局貝工消费合作社印氧 可用以在一單一的裝置記憶體内(亦即由一具有四個256位元 組之庫的單一的1K位元組之EEPROM组成的ικ位元組記憶體 )之256位元組的區塊中選擇。加速器200在位元组位址〇時開 始存取,並且一次一位元組的方·式繼續該存取作用,位元组 位址自動地增量1,直到偵測到一停止情況才停止。 圖38係為結構暫存器(CFGI)的.示意圖,當與之連接時,它 包含用於以外接EEPROM次系統3800之操控為基礎的主電腦 軟體之控制位元。該位元場的一簡要說明如表34所定義者。 PCI(主電腦)對EEPROM3800的存取亦經由結構介面暫存器 内的DIN/EEN位元而被致能,當該DIN/EEN位元被寫入一個1 日寺’貝1J會分另在EECLK洋口 EEDAT接聊上致育色CLK矛口 DOUT位 元。時序和資料信號的時序最好完全由以軟體程式為基本的 主電腦決定。 表35係描述當該EEPROM3800被使用時之内容,其結構空 間以雙重字元的對齊方式載入。 如上所討論者,加速器200包括一可程式化的時序控制,以 使它能依相關的裝置之功能而以不同的結構介面,其時序模 組如圖41所示。該時序的設計有幾種優點。其中之一是它支 持一 1蜀立的時序環境,其中加速器200必須作用如一獨立的系 80- 本紙張尺度適用中國國家棣準(CNS ) A4規格(210χ297公釐) 裝 頁 訂 Α7 Β7 五、發明説明(78 ) 統β此設計亦使用一鎖相迴路(PLL),以產生一範圍在60-100MHz内的可變速度時序,以由12 288ΜΗζ或是2 822Μη^ 進入時序用於核心處理器10〇。有利地是,該流處理器1〇〇不 會因此與主從式進入的時序偏移。較佳的設計尚用以清除時 序她nt-down),如同在當沒有緊密的虛理#敖行時為省 電而需的操作。 '衾時序模組係偏向於石英振重器4200和一鎖相迴路4201周 圍:多工器4202可允許在經該石英振盪器42〇〇而輸入或是輸 入量上升和輸入量下降資訊之間^選擇。一第二多工器4203在 軟體的控制之下在該石英振盪器42〇〇.、_串接埠位元時序或是 用以通到前分除器4204的PCI匯流排時序之間選擇。該前分除 器4204係可操作地以範圍在丨到丨6内的任何除數除信號輸入, 其輸出被連接於該鎖相迴路4201上。 該鎖相迴路之輸出經過一除2的電路4206到一除4的電路 4207和一多工器42〇8,該除4的電路42〇7提供一輸出來監視鎖 相迴路’以達到測試的目的。多工器42〇8在該pci時序(由該 除2電路4206所輸出者)和一測試SPCLK之間選擇。該可輸入 一測試時序的能力可有利地允許直接測試該流處理器1 〇〇,多 工器4208之輸出同時會出現在一對時序緩衝器4209和4210的 輸入上。 時序緩衝器4209驅動該流處理器核心1〇〇,而時序緩衝器 42丨0則驅動晶片上記憶體和DMA引擎2i)8。該時序緩衝器 4210尚驅動圖框計時器4211,而提供8ΚΗζ的圖框時序。該圖 框係定義處理的週期(在每個8ΚΗζ的圖框時序内),即分 -81 - 本紙伕尺度適用中國國家椟準(CNS ) Α4規格(210Χ297公釐) 锖先Μ讀背面之注t事項寫本頁 -裝. *1Τ 經濟部中央橾隼局負工消费合作社印* A7 B7 五、發明説明(79) 配到不同工作的時間,如波形表或合成器的運算執行。 時序是由一組時序暫存器所控制,時序控制暫存器 l(CLKCRl)控制振盪器接腳選擇、振盪器之供電、鎖相迴路 來源之選擇、PLL之供電以及軟體時序之致能和輸出時序之 選擇’_如屬41所示v圖42是該時序控制暫存器〗的示音岡二直 36則提供在暫存器位元場内的每一位元之功能的簡要描述。 圖43係以圖示說明用以控制pLL42〇1的來源時序的前分除 计數的時序控制暫存器2(CLKCR2)。圖43所示的位元場尚進 一步地描述於表37内。 _ 圖44係說鎖相迴路多工器暫存器,表38說明其中之位元場 的功能。特別地是該暫存器保有用以選擇供鎖相迴路之轉換 的乘法器之位元。 加速器200包括一特徵報告暫存器和負載暫存器之結構,負 載暫存器包含反饋位元,以用於以軟體為基礎來測試不同的 裝置和裝置家族結構之選擇。圖45所示為該特徵報告暫存器 的π意圖,表39則是位元場的簡要說明。一般而言,該特徵 報告暫存器用以識別用以建構加速器2〇〇的製程型式,以及一 可供一給定裝置識別高可達8個結構選擇的場。 結構負載暫存器l(CLFLl)和結構負載暫存器2(CLFL2)係分 別如圖46和47所示。這些暫存器通常可提供一主元件,以用 以讀取在一BIOS前負載期間或來自該bios前負載的裝置結構 選擇的位元組。該位元場的通論係如表4(1和41所示β $加速器200包括一中斷控制器,其接受來自晶片上之乘法 源乏中斷請求,和因響應而經由pci匯流排將一單一的中斷線 -82- 本紙浪尺度適用中國國家榡準(CNS ) A4規格(210X297公釐) (請先聞讀背面之注t項再填寫本頁〕 0. *v* 經濟部中央橾準局負工消费合作社印装 A7 _B7 五、發明説明(80) 一 (INTA)顯示於主系統上。該中斷控制暫存器提供一用以做來 源識別的主中斷服務路由埠’以及用以清除該來源和指示中 斷結束(EOI)之方法。 圖48所示為該加速器200的一通例。中斷來源包括虛擬頻道 (M 5、主電腦故始的傳送之DMA终點、SP中斷頻道〇、sp + 斷頻道1SP雙圖框過渡運作以及MIDI中斷。 可利用的暫存器包括用以報告申請中的中斷來源之主中斷 狀態暫存器(HISR)、用以報告虛擬頻道信號之主信號暫存器 0(HSR0)以及做為中斷控制和啟七化之結束的指令暫存器的 主中斷控制暫存器(HICR)。—— · 主從式中斷致能位元(INTENA)控制一全球性位準的中斷線 (INTA)之生效與否。當該INTENA被清除,不會有任何中斷 會因為任何中斷源動作而生效。當INTENA被設定,任何中 斷源之動作皆會產生一外部的中斷,該INTENA被設定(亦即 中斷致能),且HICR暫存器内收到EOI指令。接著該INTENA 響應於下列之數種情況而被清除(亦即中斷被抑能):若任何 中斷源位元被設定,則對該HISR暫存器做一主讀取;以該 HICR指令暫存器的寫入而澈底的清除;或是一元件硬體的重 設。應了解若該HISR暫存器被讀取,且沒有任何中斷源位元 被設定,則IMTENA不會有效。 較佳的中斷模式尚可以一 ’,虚擬頻道”機構支持。通常該虛 擬頻道是一信號化機構,它用來·使用於'給定的處理原理之 單一中斷頻道擴展成一多頻道的流處理和提供訊息的架構。( 用方擬頻道化的暫存器場已經於前文討論。)每個被一取樣 -83 - 本紙張尺度適用中國國家標準(CNS ) A4規格(2丨0X297公釐) 請先閱讀背面之注*事項寫本頁 -裝· 訂 經濟部中央樣牟局貝工消费合作社印製 A7 B7 經濟部中央標準局系工消费合作社印製 五、發明说明(si ) 記憶體内的模組緩衝器讀取或寫入的流皆被指派到一虛擬的 頻道數上。該虛擬頻道數是由該DMA引擎208在任何時候當 該模組緩衝器指示器通過中點或是纏繞時以信號通知的,以 指示該緩衝器正在充填或空的,並且正在中斷主電腦,直到 資_料是可利用時為止。 ___________ 對主電腦之中斷亦可以在某些虚擬頻道(M5被信號化時觸 發,此可允許立即地以信號通知缓衝器的狀況。其他的虚擬 頻道設定一虛擬頻道資料,該資料可以被主電腦或流處理器 核心100在稍後讀取。此方式對·於3D聲音以及DACSRC來源 緩衝器是特別有利的。在此情況下,任何要求嚴密的緩衝器 皆可使用一虛擬頻道以立即地中.斷目的地處理器(例如主電腦 CPU)。 該虚擬頻道也可以用以使訊息通過。在此情況下,每一訊 息的開端將被指定到它在軟體中的虚擬頻道上《某些訊息是 緊急的,且被指定到中斷中虛擬頻道(M5中,明顯地其他的 訊息要求服務,這些頻道則被指定到非中斷的虛擬頻道上。 表43則簡述由信號接收器響應給定的虛擬頻道信號而採取的 行動。 為使用虛擬頻道以當流緩衝器需要服務時即信號通知’在 DMA請求器區塊内的一個位元組可反映出所選定的處擬頻道 在每次DMA交易結束時或是只有在一 DMA交易結束時是否被 信號通知’如此花去了一模组緩:衝器内的—中點β信號暫存 器庫被定期地圈選,以決定那一個暫存器需被再充填,因此 當曇#時,這些暫存器可以被再充填。 -84- 本紙張尺度適用中國國家標芈(CNS)A4規格( 210X297公釐) —— ^—v (請先《讀背面之注#事項再填寫本頁) 订 五、發明説明(82) A7 B7 經濟部中央橾隼局貝工消费合作社印裝 囷49所示為HISR暫存器的一示意圖。通常此主中斷狀態暫 存器提供中斷來源資訊給主中斷服務路由,讀取不會有任何 不好的效果,其位元場的描述可見於表44。 圖50係說明HSRO暫存器,此主信號暫存器報告虛擬頻道因 為暫备器的最後讀取而已被信號通知。該組虑橱信號在主效 時不會中斷處理器,但卻依主電腦的週期式圈選而定。用於 暫存器HSR00之位元組場的描述如表45所提供。 圖51係顯tf HICR暫存器的一類似不意圖。此主中斷控制暫 存器提供一主電腦寫入埠’以供·中斷信號化週期結束和分開 標記中斷時之用,它亦提供一讀取举以供讀取〖ΝΤΕΝΑ的狀 態。該HICR暫存器的位元場係如表45所描述。 圖52所示為一用於加速器2〇〇的一較佳的功能監視模組的功 能方塊圖,此模組可即時地監視键内部系統以及元件功能指 示器。圖52所示的功能監視器形成PCI介面206的一部份。基 本的功能監視模组是以一對具有可程式化的計數來源之計數 器5301和5302為基礎’出現在計數器5301和5302的偶數計數 來源分別是多工器5303和5304。這些多工器又受到對應的控 制暫存器5305和5306組之控制。計數器5301的輸出被保持於 功能計數器值暫存器5307中,計數器5302的輸出則被保持於 功能計數器值暫存器5308中。這些暫存器的輸出被送到該主 讀取埠上。 該功能監視器允許使用者識別諸如頻寬使用和加速器2〇〇每 秒所需的PCI交易等因素。此監視器在當該加速器2〇〇作為 pcii流排之主控元件時之要求可以是嚴苛的,以致能存取該 -85 - 本紙張尺度適用中國國家標準(CNS) Μ現格(2丨ox297公羞) (請先閲讀背面之注4m-項再填寫本頁) :裝· 訂 < A7 ------- -B7 五、發明説明(83 ) ~ 主記憶體。由於該功能監視,來源和工作之負載可以完全滿 足。例如,若加速器200被用在一較低功能的系統中,且由監 硯所形成的所需頻寬是不可得時,在該加速器2〇〇上的工作可 以依需要而重新配置,以使功能最佳。 本兔轉的雙计數器可尤許不同的元素被比較 丄—倒-知」 數器可監视正消耗的pci交易數,而另一個計數器可監视時序 的數目’由此可以計算出屬於系統功能的一規格的每一Pci 易中的平均時序數之值。 應注意該雙計數器的方法尚年另一項優點。計數器53〇1和 5302可用以決定前述之鎖相迴路之穩定·性,在一鎖相迴路的 開啟(start-up)期間’總是有一個不穩定的週期,藉著重覆地 叶數鎖相迴路在一和一已知頻率(時序)相關的給定的時間週 期上由該鎖相迴路所輸出的時序數之方式,可以決定其穩定 性。在該功能監视器上加上此功能,則可省去前述之具有二 序產生電路的分開計數器,進而可省去碎。 ’ 功能控制暫存器5305/5306PFMC之示意圖如圖53所示。 46是該PFMC位元場的一簡要說明。此暫存器通常可提供用 於该功能監视計數器5301和5302的主電腦控制辞^ 、 a圖54A所示為功能計數器暫存器(pFcV1),此暫存器 常是以用以讀取計數器53〇2之結果的回讀取暫存器,在其 致期間(即功能監視)(C1RS=1),此暫存器不會被即時更新, 且其内容是不可定義但可計數的...。此暫存器只有在計數停止 時才包含一有效值。表47所示為用於此功能計數器丨值 5308"*的位元場之描述。 -86- 本紙ft·尺度賴+ S@家標率(CNS ) A4規格(210X297公;t -___ A7 B7 經濟部中央橾準局系工消費合作社印«. 五、發明説明(84) 圖54B所示為功能計數器2值暫存器(PFCV2)5307之示意圖 °通,該暫存器是一用以讀取計數器2 5301之結果的回讀取 暫存器《在有效的功能監視期間(C2RS=1),此暫存器不會被 =時更新,且其内容是未定義的。該暫存器最好在只有計數 停止時ϋ含一^效的計數 。表48所示為此功能計激器7俏暫 存器5307的位元場之說明。 上述的計數器5301和5302兩者最好以相同的輸入事件組進 行,以做為計數來源使用,表49定義了該事件選擇和編碼方 式β _ 功能li视器的開始是由選擇·用於希玄的功能計量之計數 來源以及致能計數器5301和5302而組成。計數器5301和5302 的啟始化和開始之方式如下所述:將所希望的來源選擇和使 這兩個計數器停止、清除和準備計數等位元寫入功能監視器 控制暫存器5305和5306中。在對該功能監視控制暫存器執行 寫入來源選擇和兩個計數器時,該暫存器即被致能。用於該 功能監視之較佳的一來源選擇組如表50所示。 以停止和回讀取的方式決定系統的狀態可以下列步驟達成 :以用以啟始監視之相同的來源選擇以及用以停止計數器之 位元寫入該功能監視器控制暫存器5305/5306中。在RS(運作_ 停止)位元中由邏輯1轉換成返輯〇時,計數停止,且計數器的 内容被傳送到該值暫存器5307-5308上,然後計數器被清除為 0。接著自該功能計數值暫存器5307和5308中讀出結果。 PCI介面控制在加速器200和PCI匯流排之間的資料互換。表 51定1可以經該PCI介面206的傳送,這些資料傳送包括以主 87- 本纸張尺度適用中國國家揉準(CNS ) A4規格(210X297公釐) (請先W讀背面之注—事項再填寫本頁} -飞裝_ 訂 A7 B7 經濟部肀央棣準局月工消費合作枉印裂 五、發明説明(85) 電腦致始以存取加速器200的晶片上記憶體,以及DMA引擎 2〇8所啟始的傳送,以讀取和寫入該主記憶體。表”定義用於 該加速器200的初級pci結構空間。 加速器200具有流處理器之能力,以助於流處理器的開始的 關閉以及助於除错時使用。 信號處理器控制特徵包括一軟重設、主從器運作/停止、下 一圖框時停止、下一圖框時運作、”tick,,(滴嗒)(亦即以一單一 時序所做的步進處理)、在滴嗒步進期間的圖框邊界競爭、 DMA請求引擎暫停/繼績、設定每一圖框的時序數的圖框分除 之可程式化和用以提供指示中斷點之能力的策略暫存器。 在加速器200中所提供的狀態設備和狀態可存取的元素中有 用於乘法-累進單元的暫存器⑺―"(圖2)累進器、來自Ybus的 乘法器輸入、指示策略暫存器、堆疊頂部、取樣AGU狀態、 CPU狀態暫存器、MAC模式暫存器、堆疊指示器、do迴路計 數器以及DMA請求器結構。這些設備可以在流處理器1 〇〇停 止時的除錯模式下操作。 另尚包含可被即時地更新和讀取的流處理器狀態設備和狀 態可存取的建議。這些包括有一流處理器時序狀態暫存器、 私式計數器、DMA目前的流數和圖框計時器目前的計數。此 外,DMA流請求器陣列、指示策略暫存器和堆疊指示器是可 以主電腦寫入狀態的。 圖55所示為流處理器控制暫存;·器(spcR)之示意圖。該流處 理制暫存器通常維持用以控制流處理器1〇〇之操作(包括 除錯支持)的位元。如圖56所示的每一位元場的功能之簡要描 —;=:,裝— /V {請先Μ讀背面之注意事項再填寫本頁) 訂
•1^ /IV -88 A7 B7 發明説明(86) "ί:::=53中’其包括有主從式運作/停止位元、在圖框 B. I 〇位疋、一單一時序”滴嗒,,位元、DMA請求致能 位疋和一重設位元β / = 56說明除錯暫存器索引(DRE⑺暫存器的位元場 。此暫存 ^卜^7^除錯存取敢盤旗复、七位元暫在器ID索引揚、 和用以特=存取那—個除錯狀態暫存器的3位元暫存器區塊 如圖56所示的DREG暫存器的位元場之說明係於表54中提供 。暫存器1之功能组(FGR1)是一和圖56所示的DRE(^存器内 的位f·狀態相依的暫存器。除錯=0,則此暫存器在處 :里器私式sf數器監视器中提供—.即時v若除錯=1,則此暫存 器根據DREG暫存器内的RGBK和REGID場而提供處理器狀態 資訊。用於此暫存器的位元場係以圖示方式說明於圖57中。 當在該除錯索引暫存器内的RGBK場被設定為零時,暫存器 檔101内容因響應於報據表55的REGID場而回到功能群組暫存 器1中。 當RGBK%被設定為〇〇 1時,指示ram位址產生單元可以被 存取以決定狀態。特別地是,指示策略暫存器的内容和堆疊 暫存器的上部是可根據被寫入於該REGID場(如表56所示)的 位元而存取的。 經濟部中央標準局負工消费合作社印策 當該RGBK暫存器被設定為〇 1 〇時,取樣位址產生單元的暫 存器可以如表57所描述的方式存取。 表58係顯示在rGBk場被設定為.011時才請求的CPU狀態存 取監視指示》同樣地,表59A係描述在當該RGBK場被設定 20(Γ時才請求的可利用之DMA請求器狀態存取,表59B描述在 -89 本纸張尺度適用中國國家榡準(CNS ) ΑΊ規格(210X297公釐) 經濟部中央標準局具工消费合作社印製 A7 _____B7 五、發明说明(87 ) ~ 該RGBK場已被設定為209時的情況,此時可允許對MAC單元 狀態暫存器作存取。 DMA流請求器陣列狀態窝入埠(DSWP)是由圖58所示的暫存 器所控制。此暫存器最好是一對DMA流請求器陣列的只可寫 入的年二巡叩:〇]場定義镇DMA請求器狀態Λ 時’該用於一給定流的DMA請求器之狀態被設定,而根據表 60之REGID場内的列和行特定流數。對DRS[3:0]場而言,位 元3被定義為請求申請中的位元、位元2是一優先性[1]、位元 1是優先性[0]和位元0表示一背景·請求。 圖59係為流處理器時序狀態暫存器(SPcs)的示意圖。此暫 存器是一用於流處理器時序控制.狀態機構的唯讀狀態暫存器 。最好SP時序狀態暫存器是一,,即時的”狀態暫存器,它可以 在任何時候被讀取,不管其處理中的運作狀態或是除錯位元 狀態為何。此暫存器可(例如)在對SPCR做一寫入後被監視, 以偵測實際上信號處理器何時會改變,因為許多狀態機器之 暫態發生在圖框的邊界上。表61描述在圖59的犯時序狀態暫 存器中的每一位元場之功能。 〜 流處理器DMA請求器狀態暫存器(SDSR)係如圖6〇所示。該 流處理器DMA請求器狀態暫存器最好是一用於DMA流請求^ 引擎的唯讀狀態暫存器。最好該暫存器亦是一,,即時的,,狀能 暫,器,它可以在任何時間被讀取,不管該流處理器的運; 狀態和除錯位元狀態為何。其位元場的描述如表62所示。 策格寫入蟑暫存器(TWPR)係顯示於圖όΙ之示意圖中。此 存器捉供對指示中斷點策略暫存器之寫人埠。個別的暫存器 -90- 本紙張尺(CNS ) ------- —y裝-- C諳先M讀背面之注束事項再填寫本頁) -訂 Λ /ΰ\
經濟部中央梂筚局員工消费合作社印製 是DREG暫存H_REGID之值選擇而得,讀取存取是 前述之功能性群組暫存器丨而提供。最好該暫存器可以一,,即 時’’的方式寫入,而此時該流處理器1〇〇仍在運作。此 號TRAPEN的狀態不會影響寫入此暫存器的能力。表g ^ 以REGIDJ1每個相關羞存取1指贲策略暫τ^11_ 接收一 16位元的中斷點位址之策略寫入。 堆疊指示器寫入暫存器(SPWR)係如圖62所示。當除錯爿 ,此暫存器提供對堆疊指示器的存取,當該堆疊的頂&在此 除錯模式下是可見的,則整個蜂.叠可以經由所有的16個原理 值而數列化該堆疊指示器的方式審查.,.場[3:〇]定義堆疊指示 器。 、 圖63係說明用於圖框計時器暫存的較佳位元場。 此圖框计時器暫存器提供一用以設定一圖框計時器預負載值 的主埠,並且可在任何時間對其做讀取和寫入,而不管流處 理器100之運作狀態為何。位元定義圖框計時器 值(即在圖框之間的SP時序的數目)。 圖框時間目前的計數(FRCC)暫存器係如圖64Α所說明者。 此圖框時間目前的計數暫存器可提供一讀取圖框計時器目前 的值之主埠’並且可以”即時,,的方式讀取。場FCC[15:0]定義 圖框計時器值(在圖框之間的SP時序的數目)》圖64B即說明圖 框計時器(FRSC)暫存器,其提供一用以讀取圖框計時器的儲 存值(它是在SP100進入睡眠狀態時被儲存的”在圖64B所示 的FRSC暫存器中,位元Fcs[15.0]保持圖框計時器儲存值。 稂據本發明之原理’有多個較佳之用以控制流處理器1〇〇的 -91 - 本纸張尺度適用中國國家標芈(CNS ) Α4規格(210X297公釐) (請先聞讀背面之注含事項再填寫本頁) 裝- Γ -訂 Λ A7 _____—. —_B7 五、發明说明(89 ) 程寺被提供。習於本行技藝之士將了解在不同的實施例中也 可使用不同的程序。 在較佳的開始程序中,程式記憶體經一主BA1記憶體探刺 機構或一主電腦啟始的DMA載入β接著,經由一主記憶體探 剌盘ΜΑΑί疆—H的DMA,元素RAM202被載入一啟始化 影像(程式)(這是先前載入程式記憶體2〇3的sp程式影像所需 的)。設定在SPCR暫存器内的run和SPRUN位元。接著處理 器100開始在下一個圖框邊界上運作,然後,既然在它開始運 作以後硬體將重設此位元,因而可開始監視rUNFr。 經濟部中夫標準局負工消费合作社印«. —1 裝-- {請先閲讀背面之注毒事項再填寫本頁) 一為了除錯的目的而用以在圖框邊界·上停止流處理器操作 的一較佳程序亦提供。此時’ SPCR(圖55)暫存器内的STPFR 位元被設定。在SPCR暫存器(圖59)内的STFR位元被監視其由 1至0的轉換。現在該流處理器100已停止,且競爭的圖框模式 被自動地打開。在此SPCR暫存器内的STPFR位元在當SP在下 一圖框時停止時以硬體將之清除,然後監視SDSR位元組,直 到目前的流等於零(以確使所有的申請中DMA皆完成)為止。 接下來,SPCR暫存器内的DRQEN位元被清除,以禁止新的 DMA請求產生《最後,為確定流處理器1〇〇已經在圖框邊界 上停止且不響應一深睡指示’要審查程式記憶體,以確使該 深睡不會導致停止的狀況。 SP具有四次中斷,這些是由SPIR控制。中斷〇提供—競爭 的圖框,當SP100停止時,設'定此位元為_,,1”將導致在下個滴 嗒上有一競爭的圖框。 fin是雙圖框過度運作之中斷,此位元是當在完成前景工 en0 · -92- 本纸乐尺度適用中國國家榡準(CNS)A4規格(2丨0X297公廣) 經濟部中央樣準局貝工消费合作社印製 A7 ____B7 五、發明説明(90 ) ' 作列表之前已看見兩個圖框中斷時#,由硬體所設定。若IP1被 設定,則此中斷將實際地中斷該前景工作,以致於工作經理 人可以動態地減少SP負載。 中斷2、3是用以在主CPU和SP之間通訊資訊的通用目的之 中I二董IP2/3.塗毯AjJl盤別的中斷有 ,否則它必須等待轉換到一背景工作。 對SP之中斷可執行對一以〇〇〇〇 〇〇〇〇 οοιχ χχοο B定址的中 斷向量之呼叫,其中XXX是中斷的數目》 有利地是,在流處理器1 〇〇已經停止以後,該流處理器1 〇〇 可以一次”單一步進”一個時序,-且在各·步進之間可以監視。 在本較佳程序中,SPCR暫存器内的TICK位元在每次執行了 一滴嗒作用時被設定為”1”。硬體將重設此位元為’,〇,,。當流 處理器100停止時,會自動地致能競爭的圖框模式,接著,該 DEBUG位元在DREG暫存器(圖56)中會自動地被設定為〇,然 後設定在SPCR内的TICK位元。流處理器100在該TICK位元由 0轉換為1上執行一單一的時序滴嗒。該DEBUG位元被設定為 1,和流處理器狀態以如前所述的方式自暫存器中存取出來。 在以TICK的基礎的步進期間,正常的步進程序被修正,以包 括設定SPIR内的FRI位元》 #玄流處理器時序亦可以圖框邊界程序步進,在此情況下, SPCR暫存器内的TICK位元被清除,以準備轉換,且在 内的FRI位元被設定,達一圖框邊界執行週波。在〇尺£〇暫存 器内的DEBUG位元被設定為0,然後在SPCR暫存器内的tick 位光1皮設定。流處理器1〇〇在TICK位元内由〇至1之轉換上以 -93 - 本紙張λ度適用中國國家榡李(CNS ) A4規格(210X2974^4 ) (讀先聞讀背面之注奢事項再填寫本頁}
•1T A7 B7 經濟部中夹樣準局負工消费合作社印装 五、發明说明(91) 及一競爭的圖框邊界上執行一單一的時序滴,荅作用。DEBUG 位元被設定為1,且根據前述之表的内容依需要對流處理器狀 態做存取β 流處理器1〇〇在其已經停止和步進以後,必須在一圖框邊界 時n哑二—圖框邊界上重新開始的敕佳租I 中,該SP應被滴嗒之次數為FRSC暫存器内剩下的時序週波數 ,以使它到達一圖框邊界。 在DREG暫存器内的DEBUG位元被設定為〇,接下來,在 SPCR内的RUNFR位元被設定。並做一檢查以確定STPFR位元 已被清除。處理器100將在下一個厨框邊界上開始運作, SPCR暫存器内的RUNFR位元被監視其由1至〇的轉換,以指 示SP已經採用指令。 流處理器100也可以在一圖框邊界處停止,審查狀態/暫存 器内容,並且無須使用任何的TICK指令在圖框上重新開始, 此停止/審查/重新開始的程序如下。如上所述的標準的圖框 邊界停止程序被執行以停止流處理器1〇〇,DEGUG位元被設 定為1 ’且根據前述之表所需者存取該流處理器。在DREG暫 存器内的DEBUG位元被設定為零,接下來,設定SPCR内的 RUNFR位元和DRQEN位元》STPFR位元會自動地由硬體清除 ’然後流處理器1〇〇將開始在下個圖框邊界時運作。監視該 SPCR暫存器内的RUNFER位元由1到0的轉換,以指示SP已經 取得指令。在相同的指令内設定:RUNFR和STPFR的方式可正 好執行一個圖框。 屋該流處理器100停止之後,則可使用下述的較佳程序讀取 -94- 本纸张尺度通州甲國國家^cNS)A4规格(2J〇x297公羡) (讀先閑讀背面之注秦事項再填寫本頁} 0 r A7 ____B7 五、發明说明(92 ) ' 流處理器除錯暫存器《應注意程式計數器、堆疊暫存器之頂 ------1--v^— (請先閱讀背面之注^事項>^?寫本頁 部和SPDMA請求器狀態暫存器不要求該流處理器停止,或是 DEBUG位元被設定,因為他們可以在任何時間被存取。首先 ,該DEBUG位元被設疋為1,和一特定的字元被窝入regid 盪j能群組暫存器敗讀取及取還嚴需^ 訊,這兩個步驟重覆,直到所有所需的狀態資料皆被取得為 止。一零被寫入DREG暫存器中以抑能DEBUG模式。該流處 理器可以由軟體使用SPCR暫存器内的軟體重設位元於任何時 間使之重設。最好的是在SPCR暫存器内的RSTSP位元被設定 ,和RUN ' RUNFR和DRQEN位元被清除,該流處理器將自 動地重設。接下來,在SPCR暫存器内的RSTSP位元被清除, .訂 且該流處理器100將被重設,但在RUN位元被清除為零時停止 〇 流處理器可以被放置於一深睡的狀態下,此點必須是提供 中斷點的一軟體啟始的時序停止。為使其深睡狀態存在,最 好採用在下個圖框上重新開始的程序,如上所述者。 經濟部中夬標準局貝工消费合作社印装 如上所討論者,加速器200包含一以—除錯器實施碼中斷點 的指示位準策略機構。其其有八個策略位址暫存器,以即時 地監視在處理器程式計數器内的電流,並且在偵測到一匹配 的狀態,則以BRANCH取代目前指示。該BRANCh位址是一 固定的策略向量’其為000h “0000 0000 οοοτ ΤΤ00”位元組, 其策略暫存器數以位元TTT表示(亦即,策略零到達位址〇〇〇h 、策略1到達位址lU4h,依此類推)。除此之外,該策略暫存 器亏·'以即時地經由除錯DREG暫存器存取方法而被窝入,但 -95- 本紙张尺度適用中國國家橾準(CNS ) M规格(210X297公釐) 五、發明説明(93) Α7 Β7 經濟部中央搮準局負工消费合作社印製 是該DEBUG位元不能被設定。該策略暫存器亦可當TRApEN 位元被設定為1時被寫入。策略暫存器的内容是由一具有該暫 存器較低的16位元之16位元的策略位址組成,其經由一全球 控制位元(DREG暫存器内的TRAPEN位元)而被策略致能。該 TRAP^Nm敦使程式对皇盖與所有的八個笛略脅·存器比 較,因此未使用的策略位址暫存應被設定為一個在信號處理 器100之具體的碼空間之外的位址。該策略暫存器可以由主電 腦或流處理器100本身操作,雖然最好這兩者之間沒有仲裁者 。該策略暫存器不會被即時地讀承,但是當流處理器1〇〇停止 和DEBUG等於1時,可以經由一獨立的debug存取暫存器而 讀取。所有的分支規用以規定位址组的策略。 用以經主電腦而經由該策略暫存器來設定指示中斷點的一 較佳程序如下:DREG暫存器被向上設定以經由使TRAPEN設 定為零的窝入方式對所需的策略暫存器存取、RGBK被設定 為100、DEBUG被設定為零、和REGID被設定以選擇策略暫 存器的數目。一 16位元的策略位址被寫入策略寫入埠暫存器 (TWPR)中,這兩個步驟被重複,直到所有的策略暫存器皆被 設定才停止。然後,該策略化由寫入DREG暫存器的方式被 致能,其中TRAPEN被設定為1且DEBUG被設定為零β —主 除錯器經由DREG和TWPR暫存器而修正該策略暫存器,而此 時TRAPEN被設定為1。除了在中斷點時使用以外,該策略暫 存器尚可被用以施加修補碼於..一嵌·入的指-示R〇m中® 圖65所示為主介面程式化模組的示意圖。加速器2〇〇主介面 被分成2個分開的介面區塊,它由記憶體映射到主記憶體位 (請先聞讀背面之注t項再填寫本耳) oi 裝 -訂- -96- 本紙張尺度適用中國國家標準(CNS ) Α4规格(2丨0X297公釐) 經濟部中央標準局負工消费合作社印簟 A7 _B7 - 五、發明説明(94 ) 址空間上。這些介面區塊可以載入由基本位址暫存器bai和 BA2所程式化的位址所定義的一32位元的具體空間内的任何 位置上,這些基本位址是由主電腦所啟始的,,插頭和播放 BIOS’’(Plug and Play BIOS)設定。第一個介面區塊ba置 在基本Μ零上〕A含13_且益的結構、甩於 狀態暫存器。這些暫存器的較佳暫存器映射可見於表64。該 第二介面區塊BA】設置於基本位,它使所有的加速器 200RAM映射到主記憶體區間中,以及DEBUG暫存器中。如 此將有利地允許主電腦直接窥奢和探刺加速器2〇〇J^的RAM 位置’用於此第二介面區塊的記憶體映射可見於表65中。 加速器200包括在I/O埠108内部的暫存器,這些暫存器可允 許主電腦對FIFO RAMMOO和26〇5(圖做寫又。有七個暫 存4被提供以建構和設立串接音頻輸入和輸出琿的狀,賤,以 利後門操作》 ~ 圖66A係說明串接音頻後門取樣指示器(serbsP)。表67A描 述該SERBSP暫存器的位元場。通常,此暫存器提供一主電腦 和流處理器100可存取的埠,以供啟始化和即時地監視用於輸 入和輸出取樣指示器的内部取樣指示器。 圖66B係顯示串接埠後門狀態(SERBST)暫存器的示意圖, 表67B則說明用於此SERBST暫存器的位元場。通常,該串接 埠後門狀態暫存器可提供一用以檢查在一傳送指令以後,主 埠對送至或是來自取樣FIFO的資料傳送的讀取程度》 圖66C顯示串接埠後門指令暫存器(SERBCM),此SERBCM 暫#器的位元場則描述於表67C中》此SERBCM暫存器通常 -97- 本纸張尺度適用中國國家橾準(CNS ) A4規格(210X297公釐) ------!--1 裝-- I (請先閱讀背面之注—事項再填寫本頁) 订
A A7 ________Β7 五、發明说明(95) — 提供一用以啟始一資料傳送到或自取樣FIF〇傳送的主埠。 囷66D顯示串接埠後門位址(SERBAD)暫存器的示意圖,該 SERBAD暫存器的位元場則描述於表67D中。此_接蜂後門位 址暫存器可提供一用以特定一主電腦後門資料傳送的FIF〇位 址。—一― 一 圖66E顯示串接埠後門結構(SERBCF)暫存器的示意圖,表 67E所示為該SERBCF位元場則的對應之描述》此暫存器可提 供一用以建構用以做後門操作的串接埠。 圖66F顯示串接埠後門窝入埠fSERBWP)暫存器的示意圖, 表67F描述該SERBWP暫存器的位元場,該暫存器可提供—用 以特定用於一主電腦後門資料傳送的HFO資料》 圖66G顯示串接埠後門讀取埠(SERBRP)暫存器的示意圖, 此暫存器的位元場則描述於表67G中。通常此串接蜂後門讀 取埤暫存器可提供一用以存取用於一主電腦後門資料傳送的 FIFO RAM資料。 經濟部中央秣準局貝工消費合作.社印製 為啟始用於後門載入操作的串接埠,該串接埠首先以如上 所述者對SERC1-SERC5和SERMC1和SERMC2暫存器做寫人 的方式建構。然後取樣指示器在SERBSP暫存器内啟始。在 SERBCF暫存器內的主電腦後Π旁通位元(HBP)接著被設定, 然後是設定SERMC1暫存器内的MSPE位元。現在串接蜂將於 FIFO傳送發生時開始運作。此時該串接埠己被建構以能對 FIFO做主讀取和寫入操作。 _ 為將一20位元的取樣窝入FIFO RAM中’在SERBST暫存器 内岛〜窝入忙碌位元(WBSY)被設定為零,以使得主讀取3:皁可準 -98 - 本紙張尺度適用中國國家橾準(CNS ) A4規格(210x297公釐) A7 _ B7 五、發明説明(96 ) 備以接收另一個入口。在0-255之間的FIFO RAM位址在將該 20位元的取樣資料寫入SERB WP暫存器之後亦會被寫入 SERBAD暫存器中。一〇〇〇〇〇〇0 2h被寫入指令暫存器SETBWP 中,且使取樣資料窝入FIFO RAM與内部的時序同步化和執 行__________—_—— ______________________________________—______ 為讀取FIFO RAM内的一位置上之20位元的取樣,在0-255 之間的一FIFO RAM位址被寫入SERBAD暫存器中。此寫入指 令暫存器SERBCM指令暫存器被載入一〇〇〇〇〇〇0 lh(讀取指令 位元RDC生效)。然後讀取操作與内部時序同步北,且執行開 始。後者等待SERBST暫存器内的讀取資料備妥位元(RRDY) 被轉換為邏輯1,如此指示出主讀取埠包含所請求的資料。然 後該20位元的取樣由主電腦自該SERBRP暫存器中讀出。 如前所述,流處理器1〇〇和加速器200可與一 INTEL AC 97™音頻Codec相容。為實施此特徵,加速器200包括一組用 以控制加速器200和該AC97音頻Codec的暫存器。 圖67八為該八097控制暫存器(八0(:71〇的示意圖,表68八則描 述該ACCTL暫存器的位元場》通常此暫存器提供用以在該 AC97元件和加速器200之間做鏈結的主控制埠。 經濟部中央揉华局I工消费合作社印製 -------1—OI裝— (請先閏讀背面之注t事項再填寫本頁 訂 /Εκ 圖67B為AC97狀態暫存器(ACSTS)之示意圖,其位元場之 說明則如表6δΒ所示。通常此暫存器可提供一用於該主電腦 和監視該AC97鏈結/加速器2〇〇之鏈結的狀態埠。 圖67C所示為AC97輸出槽有效暫存器(AC0SV)的圖示,表 68C描述此AC0SV暫存器的位元場。此暫存器可提供主電腦 之設定用於AC97分接相位的穩定槽有效信號(slot0)。 -99- 本紙張尺度適用中國國家樣牟(CNS ) Α4規格(21〇X 297公楚) 五、發明説明(97 ) Α7 Β7 經濟部中央標準局員工消费合作社印製 圖67D顯示AC97指令位址暫存器(ACCAD)的示意圖,其對 應的位元場則描述於表68D中。此暫存器通常可允許埠設定 用於一 AC97圏框的指令位址场。 圖67E是該AC97指令資料暫存器(ACCDA)的示意圖,此 ACCDA>t5· 6BE 中。镇暫存_器可允許主 用於AC97圖框的指令資料場。 圖67F所示是AC97輸入槽有效暫存器(ACISV)的示意圖,表 68F顯示該ACISV之位元場的說明。此暫存器可允許主電腦感 測用於該AC97分接相位的輸入槽·有效信號(sl〇t〇)。 圖67G係顯示AC97狀態位址暫存器(ACSAD)之圖示,表 68G則描述該ACSAD位元場。此AC97狀態位址暫存器允許主 電腦抓取用於一 AC97輸入圖框的狀態位址場。 圖67H所示為AC97狀態資料暫存器(ACSDA)之示意圖,其 位元場則描述於表68H中。此AC97狀態資料暫存器允許主電 腦抓取用於一 AC97輸入圖框的狀態資料場。 圖671通常係描述可經由AC97介面而取得的特徵,該特徵 是由前述之暫存器所建構。 圖68 A為MIDI輸入/輸出埠6900的示意圖。來自主電腦的資 料被經由一 MIDI輸出FIF0(16個入口)、一移位器/資料格式器 6902和MIDI輸出埠6903而輸出到一MIDI裝置上。由一MIDI 來源輸入的資料被送經接腳6904、移位器/資料取出器6905和 一 16個入口的輸入FIFO6906。一:往回迴路被提供以使來自主 電腦的資料迴路往回經過移位器6905和FIFO6906。 ΙνϊΐΪΜ輸入/輸出埠6900扮演兩個主要的角色,其依系統的結 -100- 本紙張尺度適用中國國家標準(CNS ) Α4規格(2丨0Χ297公釐) (请先《讀背*之注妻事項再填寫本頁) ο裝 *1Τ .: /ΟΒ\ 五、發明説明(98 ) A7 B7 經濟部中央梯準局負工消费合作社印装 構而定。在AC97的結構之下,MIDI埠提供一基本雙向外接 的MIDI介面以和”盒子外部”的樂器連接。若使用—音頻母板 時’則MIDI輸入埠被用以連接母板輸出埠,以提供ampu-40 的資料給該MIDI控制器/合成器。 圈Mg一既^蓋IMIDI控制暫存器(MTDCR)的圖示 器的位元場則描述於表69A中。此MIDI控制暫存器可允許主 電腦控制該MIDI輸入和輸出埠。 圖68C所示為主電腦MIDI狀態暫存器(MIDSR),表69B描述 此主電腦MIDSR的位元場,此脅存器可允許主電腦檢查該 MIDI輸入和輸出埠的狀態。 · 圖68D所示為SPMIDI狀態暫存器,此暫存器的位元場則於 表69C中描述,該SPMIDI狀態暫存器可提供流處理器1〇〇存取 用於MIDI輸入埠的狀態。 圖68D所示為MIDI窝入埠(MIDWP)暫存器之圖示。表69〇描 述MIDWP暫存器的位元場。此暫存器可提供用以寫入Mmi 傳送FIFO的主埠。 圖68F所示為MIDI讀取塢(MIDRP)暫存器的示意圖,表69E 說明用於此暫存器的位元場。此MIDI讀取埠暫存器可提供用 以讀取MIDI接收FIFO的主埠,其亦提供該暫存器之流處理器 100可存取的說明。 I/O璋108的遊戲搖样蜂提供四個’,座標,,頻道和四個,,按鈕,,頻 道,以達到輸入的能力。該座標:頻道提供一用以提供位置的 遊p搖桿資訊給主系統的裝置,該按鈕頻道提供使用者事件 資訊"^·主電腦》此辞可以以一傳統的圈選模式操作,咬是以 請 先 閱 讀 背 面 之 注 言 事 項 再/ 金 裝 訂 101 - 本紙铢尺度適用中國國家揉準(CNS 規格(210X297公釐) 發明説明(99) A7 B7 經濟部中央標準局貝工消费合作社印装 一”硬體加速的,,模式操作,其中計數器係供座榡決定之用。 囷69A所示為遊戲搖桿圈選/觸發暫存器(JspT)的示意囷’ 此暫存器提供用以圈選輸入和座標比較器輸出的主電腦埠’ 對此埠之寫入亦會觸發用以座標值的被圈選量測之座標*充電/ 遊戲搖样圈選^發暫存器敢位 70Α所示。 ,69Β>斤示為遊戲搖桿控制暫存器(JSCTL)之示意圖此 存器可提供一用以控制遊戲搖桿埠之搡作的主埠’該 桿控制暫存器的位元場如表7〇B所示。 p圖69C係為遊戲搖桿座標暫存器1(Jsa)之示意圖該 器提供用以讀取第-遊戲搖桿座.標對的數位協助座二 的主埠,用於此暫存器的位元場可見於表7〇(:。 m 圖69D所示為遊戲搖样座標暫存器2(JSC2),表 用,此〒存器的位元場。該遊餘㈣標暫存幻提供用二二 取第二遊戲搖桿座標對的數位協助座標計數值的主埠、。" 圖69E係說明遊戲搖桿GPI〇暫存器(JSI〇),此暫 以使用遊戲搖样座標接脚以使用於非97結構中做為通用的、 场打開淺出的輸出。表观則描述此暫存器所用的位】場 係說明用以在系統、次系統或以不同的時序率 操作的兀件之間傳送資料的較佳系統。舉例而言圖 1〇=2可以被用甘以控制在加速器細之間的資料互換,而 的時間基礎而操作。而圖简示之電路可以 ^麻
{請先W讀背面之注當事項再填寫本頁) ο 裝. 訂 102 本紙浪尺度ϋ财關家標準(CNS ) Α4規格(210X297公f A7 B7 五、發明説明(100) 用上,為說明起見,此電路之結構和操作將於加速器200和 PCI匯流排之間的交換内容中討論之,但本發明的原理並不僅 限於此。 囷70A所示為實施本發明之原理的同步化電路的電子 免意_置_1_|^_後趙讀取/直.H求.是經由一 〇R(或)間71 而句 PCI匯流而收得,該〇R閘7102的輸出和信號(read γ)閘化至 一 AND閘7103上。如前所進一步討論者,該同步化電路71〇1 必須是一迴路,該READY信號基本上是一回復信號或是一確 認信號,它指示加速器200已經#備好接收來自該ρα匯流排 的新的記憶體請求。 · 該AND閘7103的輸出驅動一多.工器7104的控制輸入,該多 工器接下來控制一正反器71 〇5的觸發(toggle)。應注意多工器 7104和正反器71 〇5可以一單一的τ正反器替換,在此情況下 ’對多工器7104的控制線可以觸發該τ正反器。當一主動的 記憶體請求經該〇R閘7〗〇2而閘接時,且該rEADγ信號是有 效的(邏輯為高),則該AND閘的輸出7103也因此為邏輯高, 並且選擇了邏輯1的輸入多工器7104。在下一個PCI週波時, 在D輸入正反器7105上的邏輯1被時序經過Q輸出。另一方面 ’若沒有申請中的記憶體請求,且該READY信號也不是有效 的’則該AND閘7103的輸出選擇多工器7104的邏輯0輸入。 此時’邏輯0被維持於正和器7105的Q輸出端上。 正反器7105的Q輸出連接至被λ流處理器(sp)(加速器200)的 主時序予以時序化的同步器7106之輸入上,此同步器7106 包含一降緣觸發的正反器,此正反器後則是一升緣觸發的正 -103 -
本紙张尺度衝固國家標準(cnsu^( 210x297,^T {讀先閱讀背面之注t事¾¾寫本頁} •裝. 訂 經濟部中央標隼局員工消費合作社印«. 經濟部中央樣準局貝工消費合作社印製 A7 B7 五、發明説明(1Q1) 反器。在此情況下,正反器7105的輸出被經由正反器的資料 輸入而時序化,且該同步器之正反器的時序輸入是受信號處 理器時序的控制。 該同步器7106的輸出連接至一互斥或閘7107的一個輸入端 上,此互斥或閘7107的五一個輸入端則是 收得,此亦將於下文討論之。通常,一由同步器716信號輸出 的有效信號(邏輯高)只有在當記憶體確認信號(Mem Ack)指示 出前次對目標記憶體的存取已經完成時才會被該互斥或閘 7107送出。此功能是以邏輯7〗08執行,其一輸入是互斥或閘 7107的輸出。 邏輯7108的另一個輸入是一自.AND閘7109和正反器7110收 得的記憶體已完成之信號。只有當前次對加速器200記憶體的 存取完成時,下一個請求才會經該邏輯7】08送出。當一新的 記憶體請求是可得的且最後一次存取已完成時,該邏輯7108 才輸出到一串列的OR閘7111上。·一對OR閘7111是供每個加 速器200記憶體使用,其中一閘用以啟始一讀取和一閘用以啟 始一窝入。在圖70A中只顯示兩個控制對記憶體N的讀取和窝 入的閘,以為簡化說明。來自邏輯7108的控制信號閘接記憶 體解碼器選擇電路7112的輸出,在本例中,該記憶體解碼選 擇電路7112解碼在HSAR和HDAR暫存器内的來源ID和目的地 ID場,因此,當邏輯7108以信號通知記憶體請求可以被服務 時,一用以識別要被存取的加速器200記-憶體(以及該存取是 一讀取或是一寫入)之控制信號則經由對應的OR閘7111而自 該觫~碼7112而閘接。每個OR閘7111的輸出是經由一對應的降 -104- 本紙張尺度適用中國國家標準(CNS〉Α4規格(210Χ297公釐) (請先閲讀背面之注贪事項再填寫本頁) :裝 訂 五、發明説明(1G2) A7 B7 經濟部中央標準局貝工消费合作社印東 緣觸發的閂鎖器7113而輸出的。 該邏輯7108的輸出亦被輸入於正反器7110的設定(S)輸入上 。來自該邏輯7108的請求接受(REQ ACC)信號設定正反器 7110和有效的已完成(DONE)信號(邏輯為低)重設該正反器 711 〇 °_旦A^鎖器711Q必須閂鎖該DONE信—號’和 使該信號送回到邏輯7108上,而指示前次請求已完成’和新 的請求可以向前。 邏輯7108並提供該請求接受信號到該回復迴路中的一多工 器7114中,如此控制了一正和器7115的觸發。該正反器7115 是以流處理器時序予以時序化的·。 除了可被餚回多工器7114的邏輯0輸入以外,正反器7115的 Q輸出亦被送至OR閘7107的第二輸入上和一同步器7116上。 此同步器使該正反器7115的輸出(記憶體確認)與PCI時序同步 ,該同步器7116亦包含一降緣觸發的正反器,該正反器後尚 有一以PCI時序予以時序化的升緣觸發的正反器。此同步器 7116的輸出接著被饋入一互斥NOR閘7117的一第一輸入端上 ’而其第二輸入則是正反器7105的輸出。此互斥1^01^#7117 的輸出是信號READY,該信號如上所述者,被送入該AND閘 7103 上。 因此’互斥OR閘7107使記憶體請求送到邏輯7108上’該信 號READY尚在讀取加速器200的期間被輸出到該PCI匯流排上 ,以指示該加速器200已經準備好接受一-新的01^^請求。該 READY信號並和閘7118和仲裁邏輯7119閘接。此仲裁邏輯 7lf9T允許主電腦在記憶體請求之間做仲裁’其以一在直接 105 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) 請 先 Μ 讀 背 面 之 注 ----ft 項
訂 五、發明説明(103) A7 B7 經濟部中央標準局貝工消费合作社印製 記憶體叢集存取上具有優先性的窥看和探刺的方式為之接 又單的雙重夺元)。每當一新的記憶體r/w請求被接受時 (7103之輸出為高),正反器7〗〇5和7115則會一次接著一 觸發他們的狀態。 圖7QHM示圖同步化電路的搡並之in。| 據本發明之原S,當正反器71〇5和7115的輸出皆為—邏輯為 低的輸出狀態時,或是皆是在一邏輯為高的輸出狀態時一 讀取/寫入信號會被送到已識別的加速器2〇〇記憶體上。如圖 70B所示的位址和資料接著送到七址和資料匯流上,該等匯 流將於下文在圖70C中做進一步的討論6在對加速器2〇〇記憶 體做寫入時,例如,會有三個步驟必須被重疊。第一個步騾 是以PCI時序讀取來源記憶體(主電腦的記憶體)、使資料與信 號處理時序同步,然後以信號處理器時序對加速器2〇〇内的目 的地記憶體做寫入。 圖70C係顯示用以在加速器2〇〇和pCI匯流排之間做資料交 換和用以使來自PCI匯流排的位址被交換到加速器2〇〇的資料 和位址管路。 資料係經由一 FIFO RAM7121與該PCI匯流排交換,此管路 是由三個暫存器級组成,第一暫存器級⑴包含一以該PCI時 序予以時序化的單一暫存器7122,在可以使一對32位元的雙 重字元管路化的情況下,此第一暫存器級7122係作為一用於 該對中的第一位址的暫時暫存器:(在傳送到加速器200中的期 間内)’直到該對内的第二個位址已經準備好問鎖至第二級上 為第二級暫存器(II)7122a和7122b包含兩個以PCI匯流排 請 先 閱 讀 背 面 之 注 言 |〇 ?裝 订 I(i -106 本紙涑又度適用中國國家標準(CNS ) A4規格(210X297公釐) 五、發明说明(1叫 A7 B7 經濟部中央揉準局WC工消费合作杜印¾ 時序基礎予以時序化的並聯之32位元暫存器,特及彳地是, 傳送之資料(在任一方向)在每當正反器7105觸發時皆^被 鎖至第二級暫存器7122上。 号 該管路的第三級(III)亦包含兩個並聯的32位元之暫存器, 但兔它支丛處處塁礎予叹 此第三級暫存器7123a和7123b在正反器7105觸發時即會觸於一 。該暫存器7123a和7123b亦與加速器200内部的32位元之資^ 匯流排7120介面,該匯流排最好是DMA匯流排21 〇(圖〗)的二 部份。 - 和該資料管路並聯操作的位址管路亦是類似的。第—級 存器(1)7125可做為用於每個雙重字元對的第一雙重字元 位元之位址以及HSAR和HDAR暫存器的對應來源出或目的地 的ID位元之暫時儲存器。資料被閂鎖至第一級位址暫存器 7115上’以響應該PCI時序。 第一位址/記憶體ID級(II)是由兩個並聯的暫存器71263和 7126b組成,這些暫存器皆被時序化到pcI時序基礎上,並且 接收在暫存器7125内所保有的第一位址/id字元,以及直接由 輸入所收到的第二位址/ID。特別地是,位址/ID資訊在正反 器7105觸發時即被閂鎖至暫存器71263和71261)上。來自暫存 器7126a内的該第一位址/id字元被送至讀取/窝入解碼器上。 第二級(ΙΠ)包含暫存器7127a和7127b,該暫存器皆是以信 號處理器時序基礎予以時序化。.特別地是,每當正反7115觸 發$ ’位址皆會被閂鎖至暫存器了^乃上,且記憶體1〇被閂鎖 至##器7127b上。 -107- (請先聞讀背面之注毒事項再填寫本頁} 0朴衣i
、1T --
本紙張尺度適用中國國家標準(CNS ) 格f2_1()x297公签J 五、發明説明(105) A7 B7 經濟部中央樣隼局員工消费合作社印裝 來自暫存器7127b的記憶體ID位元被顯示於讀取/寫入解碼 器7128上,且位址位元在正反器71〇5的下一次觸發時可經由 暫存器7127a而被管路化。暫存器7127&使管路位址位元轉到 最好是DMA匯流排210的一部份的位址匯流排7129上。 經由圖7P__Q..的...位..趾.和.資料營線而管路化的時序 圖。在此情況下,資料正被讀出該PCI匯流排,並且被寫入在 加速器2〇〇(舉例)内的一選定記憶體中。 圖70C中,該資料路徑管線顯示32位元資料閂鎖器、16位元 的位址閂鎖器,並且暗示有四位_元的記憶體_識別器閂鎖器。 一額外的位元組亦與每一位址閂鎖器.相關: 窝入有效一指示閂鎖器包含用以寫入的位址/資料; 讀取有效一位址閂鎖器包含用以讀取的位址; 讀取資料有效一資料閂鎖器包含回復讀取資料; 最後一指示此請求是一串列的最後請求; Γ最後一準備由SP時序回到pCI時序,以指示該,,最後的,,存取 已經完成》 讀取請求和寫入請求可以被配對在—起但是在一讀取請 求以後,該窝入請求必須保持被離開兩個管線前進,因為回 復的讀取資料將只能使用資料問鎖器(資料關器被用以以雙 方向通過資料;)。 如圖70C所示,資料和位址在ρα時序的每次升緣時被讀入 級I中,每次具有PCI時序的正反.器?1〇5和記憶體犯八的時, 對,二的記憶體核心則會送去以同步器7丨〇6使之盥流處理器時 序同~步化。換句話說,當一字元對的第二字元正被寫入時, -108 本纸張尺度通历*f因®豕標準(CNS ) A4说格(2ΐ〇χ297公釐) 0 (誇先聞讀背面之注事項再填寫本頁)
L --'•
T A7
經濟部中央橾準局貝工消费合作社印裝 該第-級會向前前進’且互斥〇R㈣的輸出在ρα時 升緣時是為高。 的 每當,反器7115觸發記憶體,來自前—請求的確認即被送 至同步H7116上’以與Pcm流排同步。對雙重字元叱的記 憶體查基直里羞此轉換而啟始。音際的窝 發生於幾個SP週波以後,當位址和資料被管路化到選定的記 憶體時發生。 總而言之,如圖70D所示,讀取是在每一 PCI週波時發生, 對應的同步化並且是在每次正务器7105轉換時發生。接著, 對應的圮憶體存取和記憶體認知·同步化在正反器2的轉換觸發 時發生。 習於本行技藝之士應了解圖70的同步化電路可以如圖71八_ 71F所示的先入先出暫存器系統取代,在本實施例中,一先入 先出的記憶體系統7200包括N個入口 7201,每一入口是由一M 位元寬的線性閂鎖器陣列組成。要被載入的入口秃以一來源 指示器7202選擇’它最好是基於來源時序所時序化的n個升 緣正反器的環’且每個這類的正反器各用於FIF〇72〇〇的每一 入口。在資料由PCI匯流排傳送到加速器200的情況下,來源 指示器正反器可以PCI時序予以時序化。 FIF07200的讀出是由一目的地指示器72〇3控制,它最好是 基於一升緣正反器環,且每一正反器對應一個入口 72〇1。在 目的地指示的情況下,正反器是以目的地時序予以時序化。 在一PCI至加速器2〇〇記憶體的傳送例中,該目的地時序可以 是汲1處理器時序為基礎。 • 109- 本紙伕尺度適用中國國家標準(CNS > A4规格(210X297公釐) f請先閑讀背面之注當事項再填寫本頁) oi 裝· *1Γ A7 B7 五、發明说明(107) ' 該來源7202和目的地7203指示器皆被啟始為零,有一短的 邏輯1串被載入以做為存取(讀取/寫入)標識器。囷71B說明該 指示器環7202或7203的一選疋之一的啟始部份,當領先緣邏 輯1到達該給定環7202或7203内的一正反器時,則對應於該正 反莽的JIFO入口會被存取。 ___ 一邏輯1的串列被載入一給定環的正反器上,使得當目的地 指示器和來源指示器之間有一比較時,可決定出是否FIF〇已 接近一空的或是一滿的狀態。圖71C顯示當產生一接近於空 的信號時’來源和目的地指示器的重疊。圖71D顯示當產生 一接近滿的信號時之重疊情形《因為FIF Ο7 2 0 0不能瞬間地停 止之故,在上述任一種情形下,·皆載入一邏輯1的串列,其以 邏輯1的領先緣為讀取/窝入標識,該1的串列指示滿的或空的 狀態將可在對應數目的時序週期内到達。既然該滿的和空的 信號在產生以後會通過一兩正反器的同步器上,三個邏輯丨被 載入指示器到達每一個標記上。 經濟部中央橾準局貝工消费合作社印製 Γ (請先閱讀背面之注Φ事項再填寫本頁)
圖71E係說明該目的地環和產生該接近空的信號之閘化的一 可能實施例圖。該環最好是以N個升緣觸發的正反器7204建 構而成。應注意圖71E之正反器的圍繞使得對應於入口 1的正 反器之輸出與用於入口 N的正反器之輸入耦合。一 NAND閘 7205和每一正反器7204相關,以偵測領先緣邏輯1,為達到此 目的,對應的正反器7204之Q輸出被輸入於每個NAND閘7205 上’以及本環内的前一個正反器7205的Q輸出上,和第一入 口相關旳NAND閘7205接收與N入口相關的正反器之Q輸出, 指示器1到指示器N的目的地指示器位元被反相和送到圖71F -110- 本紙張尺度適用中國國家揉準(CNS ) A4规格(210x297公釐) B7 五、發明説明(108) • ' 經濟部中央樣準局貝工消费合作社印袋 所示的電路上,以產生如下討論的接近滿的信號° 每一 NAND閘7205的輸出被供至一 OR閘7206的對應輸入上 和來自如圖71F所示的電路之反相的來源指示器上。該閘 7206的輸出被一閘7207反相而變成接近於空的指示器。 圖71F係說明用於來源指示器環的一3JL的皇禮。-存 環類似地,本來源指示器環包括一正反器環7208,其每一正 反器分別與一對應N的NAND閘7209相關,該正反器7208是以 來源時序時序化,且其輸出圍繞到對應的正反器7208或 NAND 閘 7209 上。 一 每一 NAND閘7209的輸出被供至一 〇R-閘7210的輸入上,該 OR閘7210的輸入上並有來自圖7.1E所示的電路之目的地指示 器(經過反相)’此OR閘7210的輸出由一閘7211反相,以提供 近於滿的指示器。 雖然本發明已由較佳實施例描述,但是,這些描述並不是 用以限制本發明,上述揭露的實施例之不同的修改以及本發 明的變化實施例將對習於本行技藝之士於參考了本發明之說 明而變得明顯。例如,習於本行技藝之士可將了解加速器2〇〇 可以經由幾種已知的匯流排或協定(如PC〗、isa、VESA等)之 一與母板介面。另一種方式是加速器2〇(^o/或流處理器1〇〇也 可以直接積體於一微處理器或其他的處理器晶片上,因此, 下列之申請專利範圍可涵蓋任何的這類修正或是落於本發明 之真正範圍内的實施例。 , -Ill - 本紙張尺度通用肀國困冢標準(CNS ) A4規格(2丨0X297公後) j--0,裝-- (請先聞讀背面之注t事項再填寫本芄)
*1T

Claims (1)

  1. 申請專利範固 經濟部中央揉準局負工消背合作社印«. 種音頻流處理器,包含· ―】以儲气資訊的暫存器檔; 丨外單元,接收來自該暫存器播内的選定暫存器 ' 訊’和輸出其結果至該暫存器㈣的選定g -9--------___________ 數兀Ξϊΐί生器,用以自元素記憶體中取還元素和係 ^. 京位址產生器可操作地以和該暫存器檔交換資 ,樣位址產生器,用以控制和取樣記憶體 ϋ音頻取 樣資料之互換,該取樣位址產生器·可響應自該元素記憶 體所收到的資料而操作;. " —乘法-累進單元,用以在接收自該取樣位址產生器單元 的取樣資料和接收自該暫存器檔内的選定暫存器的資訊 上操作。 根據申請專利範圍第1項之流處理器,其中該暫存器包 含數對暫存器,該每對暫存器中的暫存器可以個別地 和以一組的方式存取。 根據申請專利範圍第1項之流處理器,其中該算術邏輯 單元包含: 一加法器,用以使自該暫存器檔内的第一和第二選定 暫存器取得的資訊相加;和 邏輯電路,用以在自該暫存棺内的·暫存器中的一選 ^者取得的資訊上進行邏辑操作。 根據申請專利範圍第3項之流處理器,其中該暫存器檔 3. 112- 本紙S尺度適用中國國家揉準(CNS )八一規^ ( 210X297公釐) f諳先《讀背面之注項再填寫本頁) -訂 • I- I II - II ·
    申請專利範固 經濟部中央揉準局負工消背合作社印«. 種音頻流處理器,包含· ―】以儲气資訊的暫存器檔; 丨外單元,接收來自該暫存器播内的選定暫存器 ' 訊’和輸出其結果至該暫存器㈣的選定g -9--------___________ 數兀Ξϊΐί生器,用以自元素記憶體中取還元素和係 ^. 京位址產生器可操作地以和該暫存器檔交換資 ,樣位址產生器,用以控制和取樣記憶體 ϋ音頻取 樣資料之互換,該取樣位址產生器·可響應自該元素記憶 體所收到的資料而操作;. " —乘法-累進單元,用以在接收自該取樣位址產生器單元 的取樣資料和接收自該暫存器檔内的選定暫存器的資訊 上操作。 根據申請專利範圍第1項之流處理器,其中該暫存器包 含數對暫存器,該每對暫存器中的暫存器可以個別地 和以一組的方式存取。 根據申請專利範圍第1項之流處理器,其中該算術邏輯 單元包含: 一加法器,用以使自該暫存器檔内的第一和第二選定 暫存器取得的資訊相加;和 邏輯電路,用以在自該暫存棺内的·暫存器中的一選 ^者取得的資訊上進行邏辑操作。 根據申請專利範圍第3項之流處理器,其中該暫存器檔 3. 112- 本紙S尺度適用中國國家揉準(CNS )八一規^ ( 210X297公釐) f諳先《讀背面之注項再填寫本頁) -訂 • I- I II - II · 申請專利範圍 5. A8 B8 CE D8 之組構為兩行暫存器,和該加法器是在自該行中的第 一行内的一選定暫存器和該行的第二行内的一選定暫 存器上所收得的資料上操作。 根據申請專利範圍第3項之流處理器,其中該元素位址 的息接旅接的後增量戈Jbt 請 先 聞 經濟部中央標準局貝工消费合作社印製 接索引.定址和直接定址的組中所選擇的一模組下,以_ 一實際的定址方式操作的。 6. 根據申請專利範圍第3項之流處理器,其中該元素位址 產生包含: 一 一增量暫存器,用以儲存一增量值; 二索引暫存器,用以儲存一·因声解碼一指示而產生的 索引值;和 一加法器,用以使來自該增量和索引暫存器中的選定 之一的值和接收自該暫存器檔内的一選定暫存器的位 址相加。 7. 根據申請專利範圍第6項之流處理器,尚包含一多工器, 用以在該加法器的一位址輸出和直接接收自該暫存器 檔的暫存器中的選定之一的位址之間選擇。 8. 根據申請專利範圍第3項之流處理器,其中該取樣位址 產生器包含: 至少一位址暫存器,用以儲存一要被執行的直接記憶體 存取之位址; - 一加法器,用以使來自該位址暫存器的一位址與該增量 值相加,以產生一記憶體請求;和 -113 - 本紙張尺度適用中國國家標準(CNS ) Α4洗格(2丨0Χ297公釐) 面 之 注 i 項 再 金 訂 > A8 C8 D8 、申請專利範圍 一請求器,用以優先化該記憶體請求。 9·根據申請專利範圍第8項之流處理器,其中該請求器包 含: 一儲存位置陣列,該每一位置儲存描述一對應資料流的 —資—訊;和 _-______________________________________________ 一 — ____ 一狀態機器,用以掃描該陣列内的該資訊,以識別具有 一最高優先性的流,該請求器將一流數目送至直接記憶 體存取電路上,以存取對應該流數目的資料化。"〜 10. 根據申請專利範圍第1項之流ϋ埋器,其中乘去累進 單元包含: .. Λ 多個並聯的資訊處理路徑,該路徑各包含. 一乘法器,用以使輸入資訊的第一^第二 ,該多工器輸出一總和向量和一進位向量·一 兀目取 進位儲存加法器,用以使該總和向量、梦:田 和一儲存值相加; # 量 —加法器,用以使該進位儲存加法器的 輸出相加;和 $一 至少一累進器’用以儲存該加法器的〜輸出β 經濟部中央標率局貝工消費合作社印裝 ------^--1 (請先W讀背面之注t項再填寫本頁 訂 11. 根據申請專利範圍第10項之流處理器,I ^ ° 的第一和第二字元的選定之一包含接收自中二取訊 產生器内的一暫存器之資訊的一比例部份^ 7'址 12. 根據申請專利範圍第10項之流丨處理器,、其該多 ^理路控的至少其一包含用以反相該輸人“二 和第二字元的選定之一的電路,以使得—負乘積 •114· 本紙張尺度逋用中國囷家揉準(CNS ) A4规格(210X297公釐)
    申請專利範固 以 也由該乘法器產生,且可減去該資訊的兩個字 13.一種音頻資訊處理次系統,包含: 用以同時地處理複數個音頻資料流; 々儲存控制該處理次*系統的指示 流排與該流處理器_合的資⑽;和 中Hi林電路,用雜㈣祕式和資料記憶體 宁的選疋之—之直接記憶體存取。 H·根據中請專利範圍第13項之音頻資訊.次系統,其中該資 料圮憶體包含一用以儲存音頻資料取樣的取樣記憶體 和一用以儲存供該流處理器使用的元素之元素記憶體 〇 15. 根據申請專利範圍第13項之音頻資饥次系統,尚包含用 以使該處理次系統和一外接的P CI匯流介面的電路。 16. 根據申請專利範圍第14項之音頻資訊次系統,其中該流 處理器包含: 一雙乘法·累進單元,用以同時地處理並聯的資訊; 一通用的算術邏輯單元,用以在和由_該雙氣法_篆進單元 所執行的操作並聯的資訊上執行算撤和邏輯操作; 一暫存器檔,用以提供輸入資訊至該乘法-累進單元和該 算術邏輯單元,並且用以儲存:來自該乘法-累進單元和該 算術邏輯單元的輸出; 一位址產生器,用以控制在該元素記憶體和該暫存器檔 -115· 本纸法尺度適用中國國家榇準(CNS) A4規格( 210X297公釐) t锖先聞讀背由之注-^項存填寫本頁) 订 經濟部中央揉準局舅工消费合作社印製 六、申請專利範圍 A8 B8 C8 D8 之間的資訊互換;和 一位址產生器,用以控制在該取樣記憶體和該雙乘唐 累進單元之間的資訊互換。 17.根據申請專利範圍第13項之音頻資訊次系統,尚包含策 請 先 閱 經濟部中央樣準局貝工消费合作社印装 器的指示,並且因響應而啟始一程式分支。 18. 根據申請專利範圍第13項之音頻資訊次系統,尚包含輸 入/輸出埠,以使串接的音頻資料與外接的音頻資訊處 理電路互換。 _ 19. 根據申請專利範圍第14項之音頻資訊次系統,其中該程 式記憶體、該元素記憶體、該取樣記憶體和該直接記 憶體存取電路係與一内部的DMA匯流排耦合" 20. —種用以操作音頻資訊處理電路之方法,包含之步驟 如下: 以一圖框化信號定義前景和背景工作週期; 在每一背景工作週期開始時決定是否需要執行一背景 處理工作,並且響應該決定步驟而執行下列次步驟: 當不需要執行一背景工作時,啟始一睡眠週期;和 當需要執行背景工作時,執行一背景工作的至少一 部份;和 在每一背景工作週期完成時,在接下來的前景工作週 期期間執行一前景工作,-該執行一前景工作的步驟包 含下列次步驟: ''在一工作樹上啟始第一工作,該第一工作呼叫在該 -116- 本紙伕尺度適用中國國家橾準(CNS ) A4妖篇 ( 210X297公釐) 之 注 項 再 订 A8_ BS C8 --------- DS-申請專利範圍 — 經濟部中央揉準局β;工消费合作社印装 樹上的第二工作; 執行該樹上的第二工作以得到所需的輪入;和 使用在第二工作執行期間所獲得的資科完成該第一 工作。 21. 底周單項土主法_—’_—其卓該啟始一第二 工作的次步騾包含下列次步騾: 呼叫第-和第二輪入資料; 執行一第三工作,以獲得該第一輸入資料; 執行一5四工作,以獲得該第二輸入資料; 使用在第三和第四工作期間·所獲得的輸入資料完成第 二工作。 22. 根,申請專利範圍第20項之方法,其中在該工作樹上 的第一工作呼叫第二工作和第三工作的輸入,該第三 工作是在執行該第二工作之步騾後才執行的。 23. 根據申請專利範園第21項之方法,其中該執行第二工 作,步帮包含執行取樣率轉換的步驟,和該執行第三 和,四工作的次步驟包含輸入具有一選定頻率的第一 和第二音頻資料流之次步騾β 24. 根據申請專利範圍第22項之方法,其中該執行第二工 作步驟包含在一具有第一頻率的音頻資料上執行取 樣f轉換’和該執行第三工作的步驟包含用以在具有 一第二頻率的音頻資料上執彳亍取樣率轉換的步騾。 25. 據申請專利範圍第22項之方法,其中該第一工作包 含使第二和第三工作的輸出混合之工作。 -117- 本紙浪尺度速用中國固家榡準(CNS ) Α4说格(210x297公釐) 1^1 n^i tn In Iff— i f ί Q (請先Mtt背面之注東事項再填寫本頁) 訂 A8 B8 C8 D8 ~、申請專利範圍 ~ 經濟部中央標準局貝工消费合作社印$. 26. 根據申請專利範圍第22項之方法,尚包含在一選定的 前景工作週期期間執行一前景工作的步驟期間儲存週 波的次步驟,以供在一接下來的背景週期期間使用。 27. 根據申請專利範圍第20項之方法,尚包含延長一第一 前景工作调期的步驟ULji赶一還岌的 對應地縮短一第二前景工作週期。 28. 根據申請專利範圍第20項之方法,其中該執行一背景 工作的次步驟包含在多個背景工作週、期期間執行背景 工作的部愈之次步驟。 - 29. —種用以在以一匯流排耦合'的第一'和第二處理次系統 之間交換資料流之方法,包含下列步驟: 儲存第一次系統内的一緩衝記憶體内之不連續的頁内 之一選定流的至少一部份; 儲存一與該選定的資料流相關的結構於第二次系統内 的記憶體中,該結構包括用以識別要在第一次系統内 的緩衝器記憶體和在第二次系統内的記憶體中緩街器 之間交換的資料迴路,和一對該第一次系統内的記憶: 體中之選定流的資料迴路之迴路開始之位址; ,將資訊儲存於第一次系統内的記憶體内之頁表内,該 頁表包括用以識別記憶體内所儲存的非連續頁之位置 的資訊以及用以定義一用於該選定資鼻流劝資料迴路 之迴路結、束位址的資訊; : - 在該第一次系統和第一次系統之間交換一頁迴路.資料 —-一 ί和 •118- 本紙張尺度適用中國國家標準(CNS ) Α4说格(210X297公釐) (請先《讀背面之注Φ —Ή裝— _事項^^€本頁) 訂 β. 申請專利範圍 A8 B8 C8 D8 經濟部中央標準局男工消费合作社印製 在該傳送一頁資料期m的任何時候使第一次系統内的 記憶體中之頁表的資訊傳送到第二次系統上,以存取 下頁資料。 ~ 30. 根據申請專利範圍第29項之方法,尚包含用以指定諒 資騾服於其也經屋流排而執社Jit克I為I 優先性的步驟。 31. 根據申請專利範圍第29項之方法,其中該匯流排包含 一 PCI匯流。 32. 根據申請專利範圍第31項之_方法,其中該記憶體包含 主記憶體,和該處理電路包含一音頻資訊加速器。 33. —種用以控制在一資訊處理系統内的記憶體互換之方 法,包含下列步驟: 對多個資料流的每一流,儲存一流控制區塊於一第一 記憶體空間内; 接收一請求以一第二記憶體空間與資料流的選定之一 互換之請求; 儲存指示在一對應於該選定的資料流之陣列中的一入 '口中所收到的請求之優先性的優先性資訊;. 掃描該陣列,以決定對一具有最高優先性的資料流之 請求; 當該選定的資料流的優先性最高時,自對應於該選定 的流的第一記憶體中取出流猃制區塊-。 34. 根據申請專利範圍第33項之方法,其中每一資料流是 長一流數相關,和該儲存步驟包含儲存對應於該選哀 -119- 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) 請 先 閱 f 1¾ 之 注 項
    頁 訂 Λ AS BS C8 D8六、申請專利範圍 經濟部中央梂率局工消费合作社印装 流的流數之陣列中的一入口之選定流的優先性資訊之 步驟。 35. 根據申請專利範圍第34項之方法,其中該取出步驟包 含以和該陣列中對應的入口相關的流控制數識別第一 記憶體内的流控制1放之皮逢里。 ___________ 36. 根據申請專利範亂第34項之方法,其中該陣列内的每 個入口是由一行和一列所定義,和對應的流數包括用 以識別對應列的選定位元數和用以識別該行的一選定 的位元數。 _ 37. 根據申請專利範圍第33項之·方法,…其中在該陣列内的 4· 一個入口尚儲存一申請中.的請求資訊和該方法尚包 含用以決定在該儲存優先性資訊之前是否有一對該選 定流之請求正在申請中之步驟。 38. 了種用以使資料流在匯流排上之傳送最佳之方法,包 含下列步驟: 決定在一交易期間,欲經該匯流排而傳送的字元群組 内的最小和最大字元數; 在該匯流排上傳送一資料字元群組流; 仲裁地開始多値L處理迴路,每一迴路至少存來自匯流 排的第一和第二字元群組,且具,有一開始和一結束點 1 使每一迴路的結束點與在該迪路間所存取的第一字元 洋狃的結束達界對齊;和. 調整在至少一迴路的第一和第二群組的至少之一内的 -120- 本紙張尺度適用中國國家搮準(CNS〉A4規格(210X297公釐) (請先聞讀背面之注t項再本頁 ,裝· 訂 AS B8 C8 D8々、申請專利範圍 ' 經濟部中央標準局員工消费合作社印装 多個字元,以使該至少一迴路的第二群组之一開始邊 本惠益迴膝的_敗趟點對齊,該字元的數目大於或等於 所決定的最小數,並且小於或等於該決定的最大數。 39. 根據申請專利範圍第38項之方法,其中該決定步驟尚 包全工驟:_____________________ _______________ 程式化,在一交易期間在每個要被存取的群組内之最小 字元數;和 在一交易期間設定在每個要被存取的群組内之最大字 元數,使成為該已程式化的最小數之函數。 40. 根據申請專利範圍第38項之·方法,其中該調整步驟是 在許多迴路之内執的,該最·小迴路數被要求使該至少 一迴路的開始點與在該迴路期間取還的第二群組對齊 〇 41. 根據申請專利範圍第38項之方法,其中一被要求對齊 的最大的迴路數是用於每一群組而決定的最小字元數 之函數。 42. —種用以在以不同的時序速率操作的第一和第二電路 之間傳送資訊的電路,包含: 用以選擇性地啟始一記憶體請求,以響應一以第一時 序定時序的記憶體讀取/寫入信號和一目標記憶體備妥 信號; 一第一正反器,用以產生以:第一時序時序化的記憶體 請求,以響應該電路的選擇性啟始之輸出; 一— 一第一同步器,用以以一第二時序同步化該第一正反 -121 - 本紙诛尺度適用中國國家標準(CNS ) A4規格(210X297公釐〉 (請先Μ讀背面之注秦事項再填寫本頁) 0,裝 -5 _ A 六、申請專利範圍 AS B8 C8 D8 經濟部t央標準局負工消费合作社印装 器所輸出的該記憶體請求; 一互斥或閘,用以使該同步器的輸出和一記憶體確認 信號閘化處理; 邏辑電路,用以產生一請求接受信號,以響應該互斥 成的信號; 一第二正反器,用以產生一以第二時序時序化的一記 憶體認知信號,以響應請求接受信號; ..一第二同步器,用以使該第-二正反器的該記憶體認知 信號輸出與該第一時序同步;和… 一互斥反或閘(NOR),用以產生該目標備妥信號,以響 應該第二同步器的輸电和該第二正反器的記憶體請求 一卜 · 輸出。 43. 根據申請專利範圍第42項之電路,尚包含用以選擇性 地輸出一信號以啟始對目標記憶體之存取的電路。 44. 根據申請專利範圍第42項之電路,尚包含一管路,以 在第一和第二電路之間傳送資訊,該管路包含: 一第一暫存器,可操作地閂鎖在第一正反器的輸出之 傳送上的資訊;和 一與該第一暫存器串聯的第二暫存器,可操作地閂鎖 在第二正反器的一輸出之傳送上的資訊。 45. 根據申請專利範圍第42項之電路,尚包含: _一第一暫存器對,用以閂鎖在一對應的資訊字元對中 了以響應第一正反器的一輸出之傳送;和 請 先 聞 讀 背 Λ 之 注 I 旁 裝 订 (Λ -122- 本紙伕尺度適用中國國家橾準(CNS) A4洗格(210><297公釐) A8 B8 C8 D8 六、申請專利範圍 一第二暫存器對,用以閂鎖在一對應的資訊字元對中 ,以響應第二正反器的一,輸出之傳送。 46. 根據申請專利範圍第45項之電路,尚包含一與該暫存 器和該第一暫存器對的選定之一串接設1的第三暫身
    第一時序。 47. 根據申請專利範圍第45項之電路,其中該資訴字元包 含資料字元。 48. 根據申請專利範圍第45項之-電路,其中該資訊字元包 含位址字元。 49. 根據申請專利範圍第45項之.電路,尚包含一與詨管路. [ 訂 串聯的先入先出暫存器。 50. —種用以在因響應一來源時序而操作的來源電路和因 響應於一目的地時序而操作的目的地電路之間傳送資 訊的電路,包含: 一先入先出暫存器,包含下列之數個入口: 一目的地指示器環,包括: 多個以一目的地序時序化的正反器,該正反器 各對應該暫存器内的一入口;和 經濟部中央標準局另工消费合作社印製 多個和該多個正反器相關的邏輯閘,以當一該正 反器内所保有的一標記到達該目的地指示器環的一預 設位置時,致能對該入口的二目的地入口之存取;和 _ 一來源指示器環包括: _多個以來源時序時序化的正反器,該正反器各對 -123 - 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) Ag B8 C8 D8々、申請專利範圍 "" 經濟部中夫標準局爲工消费合作社印衷 應該暫存器内的一入口;和 多個與該多個正反器相關的邏輯閘,以當一該正 反器内所保有的一標記到達該來源指示器環的二韻說 位置時,致能對該入口的一目的地入口之存取。 51.報搲申請鼻利範圍第50項之雷1,1主該LiLiijiAilL& 器環的正反器内所保持的標記包含多個具有一選定邏 輯狀態的位元。 52.,根據申請專利範圍第51項之電路,其中該來源指示器 環的正反器内所保持的、標記泡含多個具有一選定邏輯、 狀態的位元。 53. 根據申請專利範圍第52項之·電路,其中該目的地指示 器環的邏輯電路中尚可操作以產生一接近立的信號, 以響應於該來源和目的地指示環的JE反器内所保持的 標記重疊的狀況。 54. 根據申請專利範圍第52項之電路,其中該來源指示器 環的邏輯電路中尚可操作以產生一接近滿的信號,以 響應於該來源和目的地指示環的正反器内所保持的標 記重疊的狀況。 55. —種乘法-累進單元,包含·· 一用以處理一音頻資料頻道的乘法-累進路徑包含: 第一輸入電路,吊以選擇性地接收一Μ個位元寬的 係數字元; - 第二輸入電路,用以選擇性地接收一Ν位元寬的資 冉字元; -124- 本紙伕尺度適用_國國家標準(CNS > Α4说格(210X297公釐) (請先閱讀背面之注參事項再填寫本莧) .0裝 订
    — Μ位tcxn位元的二之補數乘法器陣 a 量^^加一讀總數和進位向 和^法器,以使該進位储存加法器«- 存使該加法器之輸出儲 位使該至少—累進器的資料饋回至該進 56. 根據申請專利範圍第55項之乘法-累進單元, 於Ν。 爽·中Μ大 57. 根據申請專利範圍第55项之乘法-累進單元,尚勺本 -用以處理第二音頻資料頻道的第二乘法_累進^徑包 含· 第一輸入電路,用以選擇性地接收一^^固 係數字元; 几九的 經濟部中央標隼局β;工消费合作社印装 第二輸入電路,用以選擇性地接收_Ν位元寬的資 料子元, 一Μ位元ΧΝ位元的二之補數乘法器陣列,以輸出— 總數向量和一進位向量;/ 、 — __ 一Ρ位元寬的進位儲存加法器,以使該總數和進位 量和一累進器輸出相加; 125-
    中 S S 家齡(CNS ) 六、申請專利範圍 A8 B8 C8 D8 一 p位元寬的加法器,以使該進位儲存加法器的第一.. 和第二輸出相加;. 至少一p位元寬的累進器,用以使該加法器之输出儲 存起來;和 用以撰擇式地偵該至夂一 位儲存加法器中。 58. 根據申請專利範圍第55項之乘法-累進單元,其中該第 一和第二路徑可同時由一單一指示控制》 59. 根據申請專利範圍第55項之味法-黑進單元,其中該第 一和第二路徑係由分開的指示控制。_ 60. 根據申請專利範圍第55項之乘法-累進單元,其中該第 一和第二路徑是以一單一的指示乘以資料的方式控制 請 先 閱 之 注 訂 經濟部中央標準局貞工消费合作社印製 61. 根據申請專利範圍第57項之乘法-累單元,其中一出 現在該乘法-累進單元的R位元寬之係數字元係同時地 提供一Μ位元的係數字元於該第一和第二路徑上。 62. 根據申請專利範圍第55項之乘法-累進單元,是可操作 地相乘由該第二輸入電路所輸入的比例化資料。 63. 根據申請專利範圍第55項之乘法-累進單元,其中該乘 法-累進路徑包括用以使出現在該第二輸入上的資料字 元反相,以使一減法作用生效。 64. —種用以存取一記憶體内的·‘緩衝器之位址產生單元, 包含: ''二位址暫存器,用以使一目前位址保持於記憶體的一 -126- 本紙張尺度適用中國國家標準(CNS > Α4现格(210X297公釐) -. A8 B8 C8 D8々、申請專利範圍 " 經濟部中央梂準局負工消費合作社印裝 緩衝器内的目前位置上; Λ —增量暫存器,用以使一用以增量一位址的值保持於 該位址暫存器中; 一加法器,用以使保持於該位址暫存器内的值與保持 於該尊量馨鼻器鸟輪值相加,以得到n锾街晷無功 下一位置之位址; 一結構暫存器,用以保持定義該加法器之操作的資訊 9 一電路,用以選擇地將該加·•法器之一輸出寫入該位址 暫存器中;和 ' 檢查電路,用以監視以該緩衝器流動的資訊。 65. 根據申請專利範圍第64項之位址產生單元,其中該加 法器包含一 η位元的模組/反向進位加法器。 66. 根據申請專利範圍第64項之位址產生單元,其中該檢 查電路是操作以: 在對該記憶體做寫入的期間,決定是否有足夠的記憶 體可利用;和 在對該記憶體做讀取的期間,決定在該記憶體是否有 足夠的資料可供利用。 67. 根據申請專利範圍第64項之位址產生單元,其中該撿 查電路係可搡作以: 根據一預設的模式使一表示★和該卧前緩衝器交換的 最大字元數之值和一該記憶體中要被存取的下一個緩 長器之位址相加,以得到一指示在該下一緩衝器的結 -127- 本紙張尺度適用中國國家揉準(CNS ) Α4坑格(210Χ297公釐) (請先閲讀背面之注奢事項再填寫本頁) 訂 A8 B8 C8 D8六、申請專利範圍 經濟部中央標隼局負工消費合作社印製 束位址之後的指示器;和 決定該位址暫存器的該位址是否位於該指示器的外部 〇 68. 根據申請專利範圍第64項之位址產生單元,其中檢查 電路可操作以1 根據一預設的模式使一表示為和該目前緩衝器_交換的 最大字元數之值和一該記憶體中要被存取的下一個緩 衝器冬位址相加,以得到一指示在該下一緩衝器的結 束位址之後的指示器;和 當該暫存器内的位址在該指示器的外部ϋΤ加法器的 輸出在該指示器的内部,時,刪除聲該加法器的輸出之 任何窝回動作。 69. —種用以監視在一音頻資訊處理系統内的功能之方法 ,包含下列步驟: 計數因第一來源而產生的第一事件抒列; 計數因第二來源而產生的第二事件佇列; 監視由該計數佇列步驟而產生的第一和第二計數;和 響應於該監視步驟而選擇式_地修正詨系統的資訊處理 〇 .70.根據申請專利範圍第69項之方法·,其中該計數第一佇 列的步驟包含計數在一相關的PCI匯流排上的PCL交易 數目之步驟,該計數第二佇列的步驟包含計數一時序 遍期的步驟,和該監視步驟包含由該計收步驟決定每 一交易的平均時序數目。 -128- 本紙張逍用中國國家橾準(CNS ) A4規格(210X297公釐) (請先閲讀背面之主 Ir'裂— 意事項再填寫本頁) 、1T % 經濟部中央標準局貝工消費合作社印製 A8 B8 C8 D8 々、申請專利範圍 71. 根據申請專利範圍第69項之太法-,-其中該計數第一事 件'佇列的步驟包含計數自一鎖相迴路而輸出的時序週 期的步驟,該計數第二事件佇列的步驟包含計數一穩 定時序的時序週期之步驟,和該監視步驟包含用以監 視該鎖相迴路在該穩定時序下之輸出的穩定度之次步 驟。 72. 根據申請專利範圍第69項之方法.,…其中計數該監視第 一和第二計數的步驟包含使第一計數僙存在一和第一 計數器相關的第一暫存器内,和使第二計數儲存在和 該第二計數器相關的第二暫存器内之次步騾。 73. 根據申請專利範圍第69項之方法,尚包含自多個可利 用的來源中選出該第一來源的步驟。 74. 根據申請專利範圍第69項之方法,尚包含自多個可利. 用的來源中選出該每個第一和第二來源的步驟。 75.. —種流處理器系統,包含: 一PCI匯流排; 一與該PCI匯流排耦合的主處理系統,包括: 一中央處理單元; 一主記憶體;和 一使該中央處理單元和.該主記憶體與該PCI匯流排介 面的電路;和 一與該PCI匯流排耦合的流處理次系統,包括: 一流處理器,用以處理同時收到的多個資料流,該 流處理器尚可操作地以使用直接記憶體存取與該主系 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) I —^i —II .....— ----- . - - - - II - r -I— - I -! I I X* I— -*- ..... I - n i (請先閱讀背面之注意事項再填寫本頁) Α8 B8 C8 D8 六、申請專利範圍 統交換資訊;和 用以使該流處理器與一多資料流的來源介面之電路 0 76.根據申請專利範圍第75項之系統,其中該使該流處理器 和該貪来一ϋϊίΫ面了 ---------Γ^.------IT------- i (請先閲讀背面之注意事項再填寫本頁) 經濟部中央標準局貝工消費合作社印製 -130- 本紙張尺度適用中國國家揉準(CNS M4規格(210X297公釐)
TW087101594A 1997-02-07 1998-02-06 Circuits, system, and methods for processing multiple data streams TW386193B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/797,232 US6055619A (en) 1997-02-07 1997-02-07 Circuits, system, and methods for processing multiple data streams

Publications (1)

Publication Number Publication Date
TW386193B true TW386193B (en) 2000-04-01

Family

ID=25170286

Family Applications (1)

Application Number Title Priority Date Filing Date
TW087101594A TW386193B (en) 1997-02-07 1998-02-06 Circuits, system, and methods for processing multiple data streams

Country Status (5)

Country Link
US (1) US6055619A (zh)
EP (1) EP0910827A3 (zh)
AU (1) AU6534198A (zh)
TW (1) TW386193B (zh)
WO (1) WO1998035301A2 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI381369B (zh) * 2006-11-30 2013-01-01 Broadcom Corp 用於處理來自多個音頻處理源的多速率音頻的方法和系統
TWI417724B (zh) * 2006-03-28 2013-12-01 Ibm 使用替代頁池管理直接記憶器存取寫入頁錯誤之電腦執行方法、裝置、及電腦程式產品
TWI512460B (zh) * 2010-08-12 2015-12-11 Advanced Risc Mach Ltd 一種用以處理資料的裝置及方法,及執行該方法之虛擬機器
US9904646B2 (en) 2011-09-27 2018-02-27 Microchip Technology Incorporated Virtual general purpose input/output for a microcontroller
US9910670B2 (en) 2014-07-09 2018-03-06 Intel Corporation Instruction set for eliminating misaligned memory accesses during processing of an array having misaligned data rows
TWI710910B (zh) * 2016-03-03 2020-11-21 南韓商三星電子股份有限公司 使用同步化和非同步化記憶體裝置之適應性機制的混合記憶體、其方法及其儲存節點

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256553B1 (en) * 1995-11-14 2001-07-03 Sime Oy Method and device to pick up, transport and put down a load
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
SE518408C2 (sv) * 1996-04-19 2002-10-08 Kvaser Consultant Ab Metod och anordning för framtagning av systemprotokoll för styr- och/eller kontrollutrustning
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
JP3961028B2 (ja) 1996-12-27 2007-08-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データフロープロセッサ(dfp)の自動的なダイナミックアンロード方法並びに2次元または3次元のプログラミング可能なセルストラクチャを有するモジュール(fpga,dpga等)
FR2759177B1 (fr) * 1997-01-31 1999-04-23 Sextant Avionique Procede et dispositif de traitement de plusieurs applications techniques avec pour chacune d'elles la surete qui lui est propre
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US6530014B2 (en) * 1997-09-08 2003-03-04 Agere Systems Inc. Near-orthogonal dual-MAC instruction set architecture with minimal encoding bits
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US6424685B1 (en) * 1997-11-03 2002-07-23 Harris Corporation Polar computation of branch metrics for TCM
KR19990039512A (ko) * 1997-11-13 1999-06-05 구본준 음원 발생기
EP0919910A1 (en) * 1997-11-25 1999-06-02 Lucent Technologies Inc. Multiple data path processor with a three-input adder
US7565461B2 (en) * 1997-12-17 2009-07-21 Src Computers, Inc. Switch/network adapter port coupling a reconfigurable processing element to one or more microprocessors for use with interleaved memory controllers
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US7085710B1 (en) * 1998-01-07 2006-08-01 Microsoft Corporation Vehicle computer system audio entertainment system
JP2861994B1 (ja) * 1998-01-26 1999-02-24 日本電気株式会社 回路合成方法、回路合成装置および記録媒体
DE69908682T2 (de) * 1998-03-20 2004-05-13 Texas Instruments Inc., Dallas Prozessor mit Echtzeit-Ablaufsteuerung zur Fehlerbeseitigung ohne Fehlerbeseitigungsmonitor
US6226735B1 (en) * 1998-05-08 2001-05-01 Broadcom Method and apparatus for configuring arbitrary sized data paths comprising multiple context processing elements
US7100020B1 (en) * 1998-05-08 2006-08-29 Freescale Semiconductor, Inc. Digital communications processor
US6295561B1 (en) * 1998-06-30 2001-09-25 At&T Corp System for translating native data structures and specific message structures by using template represented data structures on communication media and host machines
JP4308345B2 (ja) * 1998-08-21 2009-08-05 パナソニック株式会社 マルチモード音声符号化装置及び復号化装置
EP0992916A1 (en) 1998-10-06 2000-04-12 Texas Instruments Inc. Digital signal processor
US6990570B2 (en) 1998-10-06 2006-01-24 Texas Instruments Incorporated Processor with a computer repeat instruction
WO2000022513A1 (en) * 1998-10-10 2000-04-20 The Victoria University Of Manchester Endian transformation
DE19849909A1 (de) * 1998-10-29 2000-05-04 Philips Corp Intellectual Pty Schaltungsanordnung zum Verarbeiten binärer Signale
US6282631B1 (en) * 1998-12-23 2001-08-28 National Semiconductor Corporation Programmable RISC-DSP architecture
US6504495B1 (en) * 1999-02-17 2003-01-07 Arm Limited Clipping data values in a data processing system
US7003030B2 (en) * 1999-03-08 2006-02-21 Lenovo (Singapore) Pte. Ltd. Receivers, methods, and computer program products for an analog modem that receives data signals from a digital modem
US6748481B1 (en) * 1999-04-06 2004-06-08 Microsoft Corporation Streaming information appliance with circular buffer for receiving and selectively reading blocks of streaming information
US8762691B2 (en) 1999-04-09 2014-06-24 Rambus Inc. Memory access consolidation for SIMD processing elements using transaction identifiers
GB2348977A (en) * 1999-04-09 2000-10-18 Pixelfusion Ltd Parallel data processing systems with a SIMD array
US8169440B2 (en) 1999-04-09 2012-05-01 Rambus Inc. Parallel data processing apparatus
US7802079B2 (en) 1999-04-09 2010-09-21 Clearspeed Technology Limited Parallel data processing apparatus
US8171263B2 (en) 1999-04-09 2012-05-01 Rambus Inc. Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions
US7966475B2 (en) 1999-04-09 2011-06-21 Rambus Inc. Parallel data processing apparatus
JP5285828B2 (ja) 1999-04-09 2013-09-11 ラムバス・インコーポレーテッド 並列データ処理装置
US7526630B2 (en) 1999-04-09 2009-04-28 Clearspeed Technology, Plc Parallel data processing apparatus
US8174530B2 (en) 1999-04-09 2012-05-08 Rambus Inc. Parallel date processing apparatus
US6633582B1 (en) * 1999-05-20 2003-10-14 Cisco Technology Inc. Symmetrical codec selection in an asymmetrical codec environment
WO2000077652A2 (de) 1999-06-10 2000-12-21 Pact Informationstechnologie Gmbh Sequenz-partitionierung auf zellstrukturen
US6470406B1 (en) * 1999-06-25 2002-10-22 International Business Machines Corporation Managing isochronous processes in a heterogenous work environment
US6850990B1 (en) * 1999-07-14 2005-02-01 Landesk Software Limited Transfer of synchronized data from 16-bit code to a 32-bit process
US6704857B2 (en) * 1999-12-23 2004-03-09 Pts Corporation Methods and apparatus for loading a very long instruction word memory
EP2226732A3 (de) 2000-06-13 2016-04-06 PACT XPP Technologies AG Cachehierarchie für einen Multicore-Prozessor
US8037152B2 (en) * 2000-06-20 2011-10-11 At&T Intellectual Property Ii, L.P. Active requesting of information for psuedo-live performance
US8090791B1 (en) 2000-06-20 2012-01-03 At&T Intellectual Property Ii, L.P. Active requesting of information for pseudo-live performance
AU2001268629A1 (en) * 2000-06-21 2002-01-02 Derivation Systems, Inc. Dynamically configurable processor core and method for making the same
US6694489B1 (en) * 2000-08-23 2004-02-17 Triscend Corporation Test interface for a configurable system on-chip
US6801541B1 (en) * 2000-09-29 2004-10-05 Advanced Micro Devices, Inc. Method and apparatus for data transmission over an AC-97 protocol link
ATE437476T1 (de) * 2000-10-06 2009-08-15 Pact Xpp Technologies Ag Zellenanordnung mit segmentierter zwischenzellstruktur
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
WO2002035856A2 (en) * 2000-10-20 2002-05-02 Bops, Inc. Methods and apparatus for efficient vocoder implementations
US6748411B1 (en) 2000-11-20 2004-06-08 Agere Systems Inc. Hierarchical carry-select multiple-input split adder
US6963977B2 (en) * 2000-12-19 2005-11-08 International Business Machines Corporation Circuits and methods for modular exponentiation
US7308325B2 (en) * 2001-01-29 2007-12-11 Hewlett-Packard Development Company, L.P. Audio system
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
GB0106285D0 (en) * 2001-03-14 2001-05-02 Unilever Plc Air bleaching catalysts with moderating agent
US7007172B2 (en) * 2001-06-01 2006-02-28 Microchip Technology Incorporated Modified Harvard architecture processor having data memory space mapped to program memory space with erroneous execution protection
US6937084B2 (en) * 2001-06-01 2005-08-30 Microchip Technology Incorporated Processor with dual-deadtime pulse width modulation generator
US6952711B2 (en) * 2001-06-01 2005-10-04 Microchip Technology Incorporated Maximally negative signed fractional number multiplication
US6985986B2 (en) * 2001-06-01 2006-01-10 Microchip Technology Incorporated Variable cycle interrupt disabling
US7020788B2 (en) * 2001-06-01 2006-03-28 Microchip Technology Incorporated Reduced power option
US20020184566A1 (en) * 2001-06-01 2002-12-05 Michael Catherwood Register pointer trap
US20030061464A1 (en) * 2001-06-01 2003-03-27 Catherwood Michael I. Digital signal controller instruction set and architecture
US6975679B2 (en) * 2001-06-01 2005-12-13 Microchip Technology Incorporated Configuration fuses for setting PWM options
US7467178B2 (en) * 2001-06-01 2008-12-16 Microchip Technology Incorporated Dual mode arithmetic saturation processing
US7162554B1 (en) 2001-07-11 2007-01-09 Advanced Micro Devices, Inc. Method and apparatus for configuring a peripheral bus
US7996827B2 (en) * 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7330481B2 (en) * 2001-08-31 2008-02-12 Ciena Corporation Highly channelized port polling in a telecommunications switch
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
DE10392560D2 (de) 2002-01-19 2005-05-12 Pact Xpp Technologies Ag Reconfigurierbarer Prozessor
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US20050097140A1 (en) * 2002-03-22 2005-05-05 Patrik Jarl Method for processing data streams divided into a plurality of process steps
US7221688B2 (en) 2002-07-31 2007-05-22 Ibiquity Digital Corporation Method and apparatus for receiving a digital audio broadcasting signal
US7464311B2 (en) * 2002-08-05 2008-12-09 Mitsubishi Denki Kabushiki Kaisha Apparatus and method for device selective scans in data streaming test environment for a processing unit having multiple cores
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
AU2003289844A1 (en) 2002-09-06 2004-05-13 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US7378586B2 (en) * 2002-10-01 2008-05-27 Yamaha Corporation Compressed data structure and apparatus and method related thereto
US7113985B2 (en) * 2002-10-15 2006-09-26 Intel Corporation Allocating singles and bursts from a freelist
US7478137B1 (en) * 2002-12-19 2009-01-13 Cisco Technology, Inc. Lightweight messaging with and without hardware guarantees
US7093204B2 (en) * 2003-04-04 2006-08-15 Synplicity, Inc. Method and apparatus for automated synthesis of multi-channel circuits
US7765506B2 (en) * 2003-04-04 2010-07-27 Synopsys, Inc. Method and apparatus for automated synthesis of multi-channel circuits
ITMI20031087A1 (it) * 2003-05-30 2004-11-30 St Microelectronics Srl Circuito per la interruzione temporanea di un segnale di sincronismo
US7894348B2 (en) * 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
EP1676208A2 (en) 2003-08-28 2006-07-05 PACT XPP Technologies AG Data processing device and method
US7584316B2 (en) * 2003-10-14 2009-09-01 Broadcom Corporation Packet manager interrupt mapper
US8515741B2 (en) * 2004-06-18 2013-08-20 Broadcom Corporation System (s), method (s) and apparatus for reducing on-chip memory requirements for audio decoding
US7725694B2 (en) * 2004-12-21 2010-05-25 Denso Corporation Processor, microcomputer and method for controlling program of microcomputer
JP4667108B2 (ja) * 2005-04-11 2011-04-06 パナソニック株式会社 データ処理装置
US7725759B2 (en) * 2005-06-29 2010-05-25 Sigmatel, Inc. System and method of managing clock speed in an electronic device
US20070073999A1 (en) * 2005-09-28 2007-03-29 Verheyen Henry T Hardware acceleration system for logic simulation using shift register as local cache with path for bypassing shift register
US7912998B2 (en) * 2006-01-06 2011-03-22 Hewlett-Packard Development Company, L.P. DMA access systems and methods
US8250503B2 (en) * 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US7453288B2 (en) * 2006-02-16 2008-11-18 Sigmatel, Inc. Clock translator and parallel to serial converter
US7856464B2 (en) * 2006-02-16 2010-12-21 Sigmatel, Inc. Decimation filter
US7724861B2 (en) * 2006-03-22 2010-05-25 Sigmatel, Inc. Sample rate converter
US8392174B2 (en) * 2006-08-07 2013-03-05 International Characters, Inc. Method and apparatus for lexical analysis using parallel bit streams
US7515071B2 (en) * 2006-11-30 2009-04-07 Broadcom Corporation Method and system for audio CODEC voice ADC processing
US7831001B2 (en) * 2006-12-19 2010-11-09 Sigmatel, Inc. Digital audio processing system and method
US7792220B2 (en) * 2006-12-19 2010-09-07 Sigmatel, Inc. Demodulator system and method
US7729461B2 (en) * 2006-12-22 2010-06-01 Sigmatel, Inc. System and method of signal processing
US8341301B2 (en) * 2007-01-02 2012-12-25 Freescale Semiconductor, Inc. Device and method for testing a direct memory access controller
US7663052B2 (en) * 2007-03-22 2010-02-16 Qualcomm Incorporated Musical instrument digital interface hardware instruction set
JP2009026136A (ja) * 2007-07-20 2009-02-05 Nec Electronics Corp マルチプロセッサ装置
JP2009026135A (ja) * 2007-07-20 2009-02-05 Nec Electronics Corp マルチプロセッサ装置
US8515052B2 (en) 2007-12-17 2013-08-20 Wai Wu Parallel signal processing system and method
US8510616B2 (en) * 2008-02-14 2013-08-13 Nvidia Corporation Scalable scan-based test architecture with reduced test time and test power
US8745200B2 (en) * 2008-05-06 2014-06-03 Nvidia Corporation Testing operation of processors setup to operate in different modes
US20090319260A1 (en) * 2008-06-19 2009-12-24 Hongwei Kong Method and system for audio transmit processing in an audio codec
US8411603B2 (en) 2008-06-19 2013-04-02 Broadcom Corporation Method and system for dual digital microphone processing in an audio CODEC
US20090327661A1 (en) * 2008-06-30 2009-12-31 Zeev Sperber Mechanisms to handle free physical register identifiers for smt out-of-order processors
US8990848B2 (en) 2008-07-22 2015-03-24 At&T Intellectual Property I, L.P. System and method for temporally adaptive media playback
US7996422B2 (en) 2008-07-22 2011-08-09 At&T Intellectual Property L.L.P. System and method for adaptive media playback based on destination
JP5195140B2 (ja) * 2008-08-06 2013-05-08 富士通セミコンダクター株式会社 半導体メモリおよびメモリシステム
US8755515B1 (en) 2008-09-29 2014-06-17 Wai Wu Parallel signal processing system and method
US8943457B2 (en) * 2008-11-24 2015-01-27 Nvidia Corporation Simulating scan tests with reduced resources
US8788782B2 (en) * 2009-08-13 2014-07-22 Qualcomm Incorporated Apparatus and method for memory management and efficient data processing
US20110041128A1 (en) * 2009-08-13 2011-02-17 Mathias Kohlenz Apparatus and Method for Distributed Data Processing
US9038073B2 (en) * 2009-08-13 2015-05-19 Qualcomm Incorporated Data mover moving data to accelerator for processing and returning result data based on instruction received from a processor utilizing software and hardware interrupts
US8762532B2 (en) * 2009-08-13 2014-06-24 Qualcomm Incorporated Apparatus and method for efficient memory allocation
US8401600B1 (en) 2010-08-02 2013-03-19 Hypres, Inc. Superconducting multi-bit digital mixer
CN102331834B (zh) * 2011-09-06 2016-09-14 中兴通讯股份有限公司 移动终端开机控制方法及移动终端
US8855248B2 (en) * 2011-10-25 2014-10-07 Cavium, Inc. Word boundary lock
US9065626B2 (en) 2011-10-25 2015-06-23 Cavium, Inc. Bit error rate impact reduction
US9236064B2 (en) 2012-02-15 2016-01-12 Microsoft Technology Licensing, Llc Sample rate converter with automatic anti-aliasing filter
US9003405B1 (en) * 2012-05-22 2015-04-07 The Boeing Company Synchronization of virtual machine-based desktop environments
TW201407969A (zh) * 2012-08-14 2014-02-16 Mstar Semiconductor Inc 線性脈衝編碼調變資料格式判斷方法
US10365332B2 (en) * 2012-11-02 2019-07-30 Analog Devices Global Unlimited Company System and method to reduce data handling on lithium ion battery monitors
JP2014092722A (ja) * 2012-11-05 2014-05-19 Yamaha Corp 音発生装置
US9354891B2 (en) * 2013-05-29 2016-05-31 Apple Inc. Increasing macroscalar instruction level parallelism
US9288144B2 (en) * 2013-10-28 2016-03-15 Broadcom Corporation Scalable and predictive packet processing
US10817802B2 (en) * 2016-05-07 2020-10-27 Intel Corporation Apparatus for hardware accelerated machine learning
US10162632B1 (en) * 2016-05-27 2018-12-25 Cadence Design Systems, Inc. System and method for a low-power processing architecture
DE102016211386A1 (de) * 2016-06-14 2017-12-14 Robert Bosch Gmbh Verfahren zum Betreiben einer Recheneinheit
CN106874320A (zh) 2016-06-20 2017-06-20 阿里巴巴集团控股有限公司 分布式流式数据处理的方法和装置
US10515007B2 (en) * 2017-03-31 2019-12-24 Intel Corporation Technologies for remapping pending bit array read requests
CN107273100B (zh) * 2017-06-15 2021-06-08 华为技术有限公司 一种数据实时处理及存储装置
US11855898B1 (en) * 2018-03-14 2023-12-26 F5, Inc. Methods for traffic dependent direct memory access optimization and devices thereof
US10747531B1 (en) * 2018-04-03 2020-08-18 Xilinx, Inc. Core for a data processing engine in an integrated circuit
US10747692B2 (en) * 2018-12-27 2020-08-18 Texas Instruments Incorporated Image processing accelerator
WO2021000282A1 (en) * 2019-07-03 2021-01-07 Huaxia General Processor Technologies Inc. System and architecture of pure functional neural network accelerator
TWI797554B (zh) * 2021-02-05 2023-04-01 新唐科技股份有限公司 系統單晶片及控制方法

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4135249A (en) * 1977-06-29 1979-01-16 General Electric Company Signed double precision multiplication logic
US4276595A (en) * 1978-06-30 1981-06-30 International Business Machines Corporation Microinstruction storage units employing partial address generators
US4187549A (en) * 1978-09-05 1980-02-05 The United States Of America As Represented By The Secretary Of The Navy Double precision residue combiners/coders
US4367525A (en) * 1980-06-06 1983-01-04 Tesdata Systems Corporation CPU Channel monitoring system
US4410940A (en) * 1980-12-05 1983-10-18 International Business Machines Corporation Transfer of control method and means among hierarchical cooperating sequential processes
JPS582946A (ja) * 1981-06-30 1983-01-08 Toshiba Corp メモリ拡張代替方式
JPS5892025A (ja) * 1981-11-26 1983-06-01 Hitachi Ltd デ−タ処理方式
US4703449A (en) * 1983-02-28 1987-10-27 Data Translation Inc. Interrupt driven multi-buffer DMA circuit for enabling continuous sequential data transfers
JPH061438B2 (ja) * 1984-04-26 1994-01-05 日本電気株式会社 倍精度乗算器
US4575812A (en) * 1984-05-31 1986-03-11 Motorola, Inc. X×Y Bit array multiplier/accumulator circuit
US4736335A (en) * 1984-11-13 1988-04-05 Zoran Corporation Multiplier-accumulator circuit using latched sums and carries
KR860007588A (ko) * 1985-03-25 1986-10-15 미쓰다 가쓰시게 데이터 처리장치
US4716523A (en) * 1985-06-14 1987-12-29 International Business Machines Corporation Multiple port integrated DMA and interrupt controller and arbitrator
US4748582A (en) * 1985-06-19 1988-05-31 Advanced Micro Devices, Inc. Parallel multiplier array with foreshortened sign extension
JPS6284335A (ja) * 1985-10-09 1987-04-17 Hitachi Ltd 乗算回路
US4800524A (en) * 1985-12-20 1989-01-24 Analog Devices, Inc. Modulo address generator
US4847750A (en) * 1986-02-13 1989-07-11 Intelligent Instrumentation, Inc. Peripheral DMA controller for data acquisition system
US4992934A (en) * 1986-12-15 1991-02-12 United Technologies Corporation Reduced instruction set computing apparatus and methods
JPS63216170A (ja) * 1987-03-05 1988-09-08 Mitsubishi Electric Corp デイジタル信号処理プロセツサ
US4876660A (en) * 1987-03-20 1989-10-24 Bipolar Integrated Technology, Inc. Fixed-point multiplier-accumulator architecture
EP0303751B1 (en) * 1987-08-20 1992-05-20 International Business Machines Corporation Interface mechanism for controlling the exchange of information between two devices
US4991131A (en) * 1987-10-06 1991-02-05 Industrial Technology Research Institute Multiplication and accumulation device
US4930069A (en) * 1987-11-18 1990-05-29 International Business Machines Corporation Mechanism and method for transferring data between bus units having varying master and slave DMA capabilities
US4893268A (en) * 1988-04-15 1990-01-09 Motorola, Inc. Circuit and method for accumulating partial products of a single, double or mixed precision multiplication
JPH01293431A (ja) * 1988-05-23 1989-11-27 Toshiba Corp メモリアクセス方式
US5134699A (en) * 1988-06-24 1992-07-28 Advanced Micro Devices, Inc. Programmable burst data transfer apparatus and technique
US5003465A (en) * 1988-06-27 1991-03-26 International Business Machines Corp. Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device
EP0375794A1 (en) * 1988-12-24 1990-07-04 International Business Machines Corporation Method of synchronizing signals which are generated on different chips having on-chip clocking systems with different speed
US5251303A (en) * 1989-01-13 1993-10-05 International Business Machines Corporation System for DMA block data transfer based on linked control blocks
JPH0644236B2 (ja) * 1989-03-08 1994-06-08 富士ゼロックス株式会社 記録装置のモニタ制御装置
US5056010A (en) * 1989-10-30 1991-10-08 Industrial Technology Research Institute Pointer based DMA controller
US5163136A (en) * 1989-11-13 1992-11-10 Archive Corporation System for assembling playback data frames using indexed frame buffer group according to logical frame numbers in valid subcode or frame header
US5293596A (en) * 1990-02-21 1994-03-08 Matsushita Electric Industrial Co., Ltd. Multidimensional address generator and a system for controlling the generator
US5027374A (en) * 1990-03-26 1991-06-25 Motorola, Inc. Bit serial Viterbi decoder add/compare/select array
US5179531A (en) * 1990-04-27 1993-01-12 Pioneer Electronic Corporation Accelerated digital signal processor
EP0473805A1 (en) * 1990-09-03 1992-03-11 International Business Machines Corporation Computer system with improved performance
US5414815A (en) * 1990-09-17 1995-05-09 Schwede; Gary W. Method and apparatus for transferring data directly between a memory device and a peripheral device in a single address cycle under the control of a processor
FR2666916A1 (fr) * 1990-09-19 1992-03-20 Alcatel Radiotelephone Vanne regulatrice de debit.
DE4123007C2 (de) * 1991-07-11 1995-04-27 Siemens Ag Verfahren und Anordnung zur Anpassung von Datenraten
CA2069711C (en) * 1991-09-18 1999-11-30 Donald Edward Carmon Multi-media signal processor computer system
US5333274A (en) * 1991-10-15 1994-07-26 International Business Machines Corp. Error detection and recovery in a DMA controller
US5386532A (en) * 1991-12-30 1995-01-31 Sun Microsystems, Inc. Method and apparatus for transferring data between a memory and a plurality of peripheral units through a plurality of data channels
US5490257A (en) * 1992-02-24 1996-02-06 Advanced Micro Devices, Inc. RAM based FIFO memory half-full detection apparatus and method
US5377325A (en) * 1992-04-21 1994-12-27 Acer Incorporated Bidirectional wait control between host module and slave module
US5448706A (en) * 1992-05-13 1995-09-05 Sharp Microelectronics Technology, Inc. Address generator for multi-channel circular-buffer style processing
US5483239A (en) * 1992-05-22 1996-01-09 Westinghouse Electric Corporation Direct memory access (DMA) sampler
CA2095647A1 (en) * 1992-05-28 1993-11-30 John Ratzel Integrated control and signal processing in a cellular telephone
US5491793A (en) * 1992-07-31 1996-02-13 Fujitsu Limited Debug support in a processor chip
US5473756A (en) * 1992-12-30 1995-12-05 Intel Corporation FIFO buffer with full/empty detection by comparing respective registers in read and write circular shift registers
EP0617361B1 (en) * 1993-03-26 2001-11-28 Cabletron Systems, Inc. Scheduling method and apparatus for a communication network
JP3687112B2 (ja) * 1993-08-03 2005-08-24 セイコーエプソン株式会社 データ転送制御装置及び情報処理装置
US5644787A (en) * 1993-08-03 1997-07-01 Seiko Epson Corporation Apparatus for controlling data transfer between external interfaces through buffer memory using table data having transfer start address transfer count and unit selection parameter
DE69424355T2 (de) * 1993-08-31 2001-02-15 Sun Microsystems Inc Speicheradressierungsschema zur Erhöhung der Anzahl von Speicherplätzen in einem Rechner zur Speicherung von Doppelgenauigkeitszahlen
US5689691A (en) * 1993-09-10 1997-11-18 Compaq Computer Corporation Computer bus utilization determination apparatus
US5513374A (en) * 1993-09-27 1996-04-30 Hitachi America, Inc. On-chip interface and DMA controller with interrupt functions for digital signal processor
US5381360A (en) * 1993-09-27 1995-01-10 Hitachi America, Ltd. Modulo arithmetic addressing circuit
US5535417A (en) * 1993-09-27 1996-07-09 Hitachi America, Inc. On-chip DMA controller with host computer interface employing boot sequencing and address generation schemes
US5574934A (en) * 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
JP3528094B2 (ja) * 1994-02-09 2004-05-17 株式会社日立製作所 バス利用方法および記憶制御装置
US5517436A (en) * 1994-06-07 1996-05-14 Andreas; David C. Digital signal processor for audio applications
US5550767A (en) * 1994-10-14 1996-08-27 Ibm Corporation Method and apparatus for detecting underflow and overflow
US5652903A (en) * 1994-11-01 1997-07-29 Motorola, Inc. DSP co-processor for use on an integrated circuit that performs multiple communication tasks
US5633897A (en) * 1995-11-16 1997-05-27 Atmel Corporation Digital signal processor optimized for decoding a signal encoded in accordance with a Viterbi algorithm
US5905766A (en) * 1996-03-29 1999-05-18 Fore Systems, Inc. Synchronizer, method and system for transferring data
US5889480A (en) * 1996-10-18 1999-03-30 Samsung Electronics Co., Ltd. Full duplex serial codec interface with DMA

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI417724B (zh) * 2006-03-28 2013-12-01 Ibm 使用替代頁池管理直接記憶器存取寫入頁錯誤之電腦執行方法、裝置、及電腦程式產品
TWI381369B (zh) * 2006-11-30 2013-01-01 Broadcom Corp 用於處理來自多個音頻處理源的多速率音頻的方法和系統
TWI512460B (zh) * 2010-08-12 2015-12-11 Advanced Risc Mach Ltd 一種用以處理資料的裝置及方法,及執行該方法之虛擬機器
US9760374B2 (en) 2010-08-12 2017-09-12 Arm Limited Stack pointer and memory access alignment control
US9904646B2 (en) 2011-09-27 2018-02-27 Microchip Technology Incorporated Virtual general purpose input/output for a microcontroller
TWI620071B (zh) * 2011-09-27 2018-04-01 微晶片科技公司 一微控制器之虛擬通用輸入/輸出
US10339087B2 (en) 2011-09-27 2019-07-02 Microship Technology Incorporated Virtual general purpose input/output for a microcontroller
US9910670B2 (en) 2014-07-09 2018-03-06 Intel Corporation Instruction set for eliminating misaligned memory accesses during processing of an array having misaligned data rows
TWI619073B (zh) * 2014-07-09 2018-03-21 英特爾股份有限公司 在處理具有未對準資料列的陣列期間用於刪除未對準記憶體存取的處理器、非暫時的機器可讀取的媒體和計算系統
TWI710910B (zh) * 2016-03-03 2020-11-21 南韓商三星電子股份有限公司 使用同步化和非同步化記憶體裝置之適應性機制的混合記憶體、其方法及其儲存節點

Also Published As

Publication number Publication date
EP0910827A2 (en) 1999-04-28
WO1998035301A2 (en) 1998-08-13
US6055619A (en) 2000-04-25
AU6534198A (en) 1998-08-26
EP0910827A3 (en) 2002-08-28
WO1998035301A3 (en) 1999-04-01

Similar Documents

Publication Publication Date Title
TW386193B (en) Circuits, system, and methods for processing multiple data streams
TW385410B (en) Method and apparatus for interfacing a processor to a coprocessor
US6385704B1 (en) Accessing shared memory using token bit held by default by a single processor
US6145007A (en) Interprocessor communication circuitry and methods
WO1998035301A9 (en) Circuits, system, and methods for processing multiple data streams
US6988154B2 (en) Memory interface and method of interfacing between functional entities
JP2017004550A (ja) ストリームに基づく演算を実装するための汎用複数コアシステムのための方法および装置
US5440747A (en) Data processor with control logic for storing operation mode status and associated method
US20030086300A1 (en) FPGA coprocessing system
JPH02146668A (ja) コンピュータ・システム
TW201203110A (en) Mapping between registers used by multiple instruction sets
JPH01157150A (ja) マルチチャンネルデータ通信制御器
CN101093577A (zh) 图像处理引擎及包含图像处理引擎的图像处理系统
JP2004510216A (ja) 混合された非同期および同期システム用少待ち時間fifo回路
US8977835B2 (en) Reversing processing order in half-pumped SIMD execution units to achieve K cycle issue-to-issue latency
CN110321166A (zh) 处理器中的基于一致性操作的分支预测
Wei et al. Cohort: Software-oriented acceleration for heterogeneous socs
US5960401A (en) Method for exponent processing in an audio decoding system
US10191867B1 (en) Multiprocessor system having posted transaction bus interface that generates posted transaction bus commands
US8006074B1 (en) Methods and apparatus for executing extended custom instructions
JP5370352B2 (ja) Simd型プロセッサアレイシステム及びそのデータ転送方法
Włostowski et al. Developing distributed hard-real time software systems using fpgas and soft cores
CN104620233B (zh) 用于对cpu内的消息通道基础设施的多流访问的虚拟化通信套接字
US8312193B2 (en) Eager protocol on a cache pipeline dataflow
Bainbridge et al. MARBLE: An asynchronous on-chip macrocell bus

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees