0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Tensilica處理器及Xtensa LX7處理器介紹

40°研究院 ? 來源:40°研究院 ? 作者:40°研究院 ? 2024-09-10 11:24 ? 次閱讀

1. 背景介紹

1.1. Tensilica介紹

Tensilica 是一個迅速成長的公司,公司主要產(chǎn)品是在專業(yè)性應(yīng)用程序微處理器上,為現(xiàn)今高容量嵌入式系統(tǒng)提供最優(yōu)良的解決方案。公司成立于1997年7月,該公司的投資者包括三家聲名卓著的創(chuàng)投公司:Oak Investment Partners, Worldview Technology Partners 和 Foundation Capital, 與高科技電子業(yè)內(nèi)著名的五家公司:Cisco Systems,Inc,Matsushita Electric Industrial Company Ltd, Altera Corporation,NEC Corporation 和 Conexant Systems。Tensilica的創(chuàng)始人為Chris Rowen,同時也是第一任CEO,他原來曾任職于Intel,Stanford,MIPS,SGI和Synopsys,同時他也是可重構(gòu)處理思想的提出者和實踐者。

Tensilica公司創(chuàng)立的目的則是提供一種可以實現(xiàn)可重構(gòu)的、核基于ASIC的、擁有對應(yīng)軟件開發(fā)工具的專用微處理器解決方法。通過前期技術(shù)上的發(fā)展以及三輪融資,Xtensa處理器誕生了。圖1展示了Tensilica公司創(chuàng)業(yè)起步階段的發(fā)展?fàn)顩r:

圖1:Tensilica公司創(chuàng)業(yè)起步階段的發(fā)展?fàn)顩r

Tensilica公司于2013年3月被Cadence公司以3.8億的價格收購,為Cadence在當(dāng)時最大的一次收購。Tensilica公司2012年銷售額為4400萬美元,收購價超過其營業(yè)額的八倍,這也充分顯示了Tensilica公司的價值。

1.2. SOC處理器

在如今復(fù)雜的SOC設(shè)計中可以看到有很多種的嵌入式處理器,從通用的處理器到專用的處理器。

通用的嵌入式處理器雖然可以很好的處理各種的控制任務(wù),但當(dāng)遇到像神經(jīng)網(wǎng)路處理、基帶數(shù)據(jù)包處理、圖像處理、音頻處理以及信息加密處理這中復(fù)雜的大數(shù)據(jù)處理時,它們的結(jié)構(gòu)、處理方法以及帶寬的限制使其顯示出極大地劣勢。而且對于內(nèi)存大小、cache尺寸和總線接口等的可選擇性較小,一般是通過提升頻率來提高性能,限制較大。

芯片設(shè)計者也曾將目光轉(zhuǎn)向硬接線邏輯(設(shè)計RTL級blocks)來提升某些主要功能的性能。不過RTL設(shè)計的設(shè)計周期很長,而且驗證所花費的時間更長,同時它也缺少必要的可編程性和靈活性。

Xtensa LX系列處理器具有很強的可重構(gòu)性和可拓展性,是進行復(fù)雜密集型數(shù)字信號處理應(yīng)用的理想之選,而一個固化的RTL應(yīng)用也只能作為其他選擇。Xtensa 處理器具有不同于其它傳統(tǒng)式的嵌入式處理器核心,改變了單芯片系統(tǒng)的設(shè)計規(guī)則。采用 Xtensa 的技術(shù)時,系統(tǒng)設(shè)計工程師可以挑選所需的單元架構(gòu),再加上自創(chuàng)的新指令與硬件執(zhí)行單元,就可以設(shè)計出比其它傳統(tǒng)方式強大數(shù)倍的處理器核心。Xtensa 生產(chǎn)器可以針對每一個處理器的特殊組合,自動有效地產(chǎn)生出一套包括操作系統(tǒng),完善周全的軟件工具??梢宰杂裳b組的 Xtensa 處理器,其設(shè)計方式彈性大,功效高,是所有高合成的單芯片系統(tǒng)的最佳選擇。它采用硬件可重構(gòu)加軟件編程的方式,既提升了處理器的運算性能又通過軟件便于實現(xiàn)控制[1]。

2. Xtensa處理器的結(jié)構(gòu)

對于Xtensa處理器結(jié)構(gòu),接下來分硬件結(jié)構(gòu)和指令集架構(gòu)兩部分分別介紹。

2.1. Xtensa處理器的硬件結(jié)構(gòu)

純硬件的系統(tǒng)便于進行計算,不便于實現(xiàn)控制,而軟件系統(tǒng)則正好相反(如圖2),Xtensa處理器正好利用了兩者的優(yōu)勢來進行處理器設(shè)計,它采用硬件可重構(gòu)加軟件編程的方式,既提升了處理器的運算性能又通過軟件便于實現(xiàn)控制。

圖2 軟硬件在計算和控制方面的優(yōu)劣勢[2]

Xtensa LX7處理器結(jié)構(gòu)如圖3所示。

圖3 Xtensa LX7處理器結(jié)構(gòu)圖[3]

由上圖可以看到,Xtensa LX7處理器的硬件結(jié)構(gòu)包含基本模塊、可重構(gòu)模塊、可選擇模塊、用戶定義模塊、功能模塊、以及拓展模塊。Xtensa LX7處理器以基本模塊為核心,SOC開發(fā)者可以根據(jù)需要的功能在功能模塊通過編碼或者圖形界面選擇相應(yīng)的模塊進行組合或者對可重構(gòu)模塊進行對應(yīng)重構(gòu)來優(yōu)化運算的性能,并能夠使用戶在較短的時間內(nèi)設(shè)計出面向特定應(yīng)用的處理器。

基本模塊包含Instruction Fetch/Decode模塊,用來進行指令的抓取和譯碼;Base ALU模塊,是一個基本的32位的ALU;控制模塊和一些寄存器模塊,用來實現(xiàn)控制和寄存。

可重構(gòu)模塊包含Instruction/Data Memory Management and Error Protection模塊,用來實現(xiàn)對指令和數(shù)據(jù)存儲器尺寸、奇偶校驗和ECC的重構(gòu);Data Load/Store模塊,用來重構(gòu)Load/Store通路的位寬以及單雙向;Base Register File模塊,可重構(gòu)Register的尺寸;Processor Interface Control模塊,可以實現(xiàn)對接口不再對系統(tǒng)總線進行依賴,可以實現(xiàn)對interface、port和queue的重構(gòu);Write Buffer 模塊,可以實現(xiàn)對1-32個buffer的選擇;iDMA模塊,通過重構(gòu)實現(xiàn)接口直接讀取處理器的本地數(shù)據(jù);還有Instruction/Data 的一些存儲(Cache、RAMs和ROMs)、一些寄存器(Data-Address Watch Rrgisters、Instruction-Address Watch Register)以及timer和中斷控制同樣是可充配置的。

用戶自定義模塊包含Designer-Defined Functional Units,用來實現(xiàn)基礎(chǔ)功能之外的用戶自定義的一些功能;Designer-Defined Data Load/Store Unit,可以實現(xiàn)多路的Load/Store通路,提升性能。

外部模塊包含連接在數(shù)據(jù)總線上的一些外設(shè)包括RAM、DMA、Device以及一些與端口接口相連的Memory。

2.2. Xtensa處理器的ISA

這個32位的Xtensa LX7處理器的結(jié)構(gòu)特色是有一套專門為嵌入式系統(tǒng)設(shè)計、精簡而高效能的16與24位指令集。其基本結(jié)構(gòu)擁有80個 RISC 指令,其中包括32位基本的ALU,6個管理特殊功能的寄存器,32或64個普通功能32位寄存器。這些32位寄存器都設(shè)有加速運作功能的窗口。下面分別介紹一些Xtensa處理器ISA的特性。

2.2.1. 基礎(chǔ)性質(zhì)

Xtensa處理器有大量的可重構(gòu)的選項,可以讓用戶獲取實現(xiàn)所需功能和性能的邏輯;高效能的16/24位指令集和用戶自定義的可變長度指令集(長度為4-16bytes的任意值)使內(nèi)存長度和性能達到最佳狀態(tài);選用5-7級ISA流水來對不同的內(nèi)存進行加速;拓展的DSP也可實現(xiàn)最高31級流水;可選擇的隊列(FIFO)、端口(GPIO)和查找接口有著幾乎無限的I/O帶寬來進行數(shù)據(jù)的傳輸,不受系統(tǒng)帶寬的影響;可以選擇通過硬件的預(yù)取來降低內(nèi)存的延遲;自動生成細粒度的門控時鐘可以實現(xiàn)功耗的降低;可以通過FLIX來實現(xiàn)指令的并行。

2.2.2. 兼容性

兼容性是Xtensa處理器ISA的根本,因為只有具有很強的兼容性才能很好的應(yīng)用到第三方的應(yīng)用軟件和開發(fā)工具上去。所有的可重構(gòu)、可拓展的Xtensa處理器都對主要的操作系統(tǒng)、調(diào)試工具以及輸入校驗設(shè)備兼容。同時所有版本的處理器都向上兼容,同時用戶自定義的指令可以重復(fù)使用。

2.2.3. 拓展性

Xtensa處理器可以很方便的將指令無縫的添加到處理器的數(shù)據(jù)通路中。任何相關(guān)的C數(shù)據(jù)類型、軟件工具鏈和需要的進行綜合的EDA腳本都是自動生成。數(shù)據(jù)通路、相關(guān)的指令以及C數(shù)據(jù)類型都是用TIE(Tensilica Instruction Extension)語言來寫的。

2.2.4. 可重構(gòu)性

Xtensa處理器提供預(yù)驗證的模塊,當(dāng)用戶的設(shè)計需要時隨時可以將其添加到設(shè)計中去,可以又快又好的實現(xiàn)所需設(shè)計。所有可重構(gòu)的選項如圖4所示。由圖可知可重構(gòu)的部分包含:在不同的應(yīng)用下選用不同的DSP (HiFi DSPs for Audio/Voice/Speech,Vision P5 and P6 DSPs for Imaging and Vision,ConnX BBE16EP, BBE32EP and BBE64EP DSPs,F(xiàn)usion F1 DSP,F(xiàn)usion G3 DSP),實現(xiàn)DSP的重構(gòu);多重自定義長度的GPIO ports對外設(shè)進行控制和監(jiān)測;Queue中的接口寬度可選擇;32位乘法器與16位的乘法器和MAC;單精度/雙精度,標(biāo)量/矢量浮點數(shù)模塊的選擇;對于VLIW和一般的指令可以通過三路64位的FLIX實現(xiàn)交叉存取。

圖4 Xtensa LX7 處理器最大范圍的可重構(gòu)選項

2.2.5. 其他性能

高低字節(jié)排序的可選擇;1或2個通用的load/store unit,每個的尺寸為32-,64-,128-,256-,512-bits可選;1-32個輸入可選擇輸入buffer; 多重自定義長度的接口是數(shù)據(jù)通過FIFO進出;FLIX的長度可選,最高128bits;數(shù)據(jù)和指定的Cache采用4路組相連,最大為128K,運用write-back和write-through的cache寫入?yún)f(xié)議;可選擇的對本地內(nèi)存的奇偶校驗和ECC。

動態(tài)功耗和漏電流功耗較??;通過中斷控制來進行片上調(diào)試;可選擇的16位處理器ID,支持大規(guī)模并行陣列結(jié)構(gòu);支持第三方的JTAG debug probe進行片上調(diào)試的硬件。

3. 通過Xtensa處理器為SOC設(shè)計增加靈活性和拓展性

Cadence為Soc設(shè)計者提供可以通過軟件編程使其設(shè)計更加靈活性和長壽命的解決方案,以及對于特定的應(yīng)用提供定制處理器?,F(xiàn)在用戶可以通過TIE(Tensilica Instruction Extension)語言設(shè)計一款功能、指令設(shè)定可拓展原始處理器設(shè)計者從未想過的特性。

TIE語言可以描述指令、寄存器、拓展單元和I/O,然后這些會自動生成并添加到處理器中。TIE語言與verilog類似,用來描述希望的指令、操作數(shù)、編碼和執(zhí)行語義。TIE文件是Xtensa處理器發(fā)生器的輸入文件,處理器發(fā)生器自動的建立重構(gòu)的處理器和完整的軟件工具鏈,該軟件工具鏈包含所有的可重構(gòu)的功能和新的TIE指令。

TIE語言可以讓用戶將產(chǎn)品性能提升和創(chuàng)造其獨特性。Xtensa處理器的拓展性可以將優(yōu)化的特性添加或者應(yīng)用到任何需要優(yōu)化處理器成本、功耗、應(yīng)用性能的平臺上。

3.1. 靈活性

就像你可以從一系列預(yù)先確定的功能選項中選擇特定的功能來提升處理器的性能,現(xiàn)在可以創(chuàng)造可以提升標(biāo)準(zhǔn)或者自定義算法指令以及更大的帶寬的數(shù)據(jù)接口。通過使用提供的工具,應(yīng)用的熱點可以被定義,同時添加用來更高性能處理這些熱點的指令,從而不再需要提升時鐘頻率或者重寫大量的軟件。

3.2. 獨一性

對于通用處理器固化的功能,不同算法運算可能性能會有差異。通用處理器在進行通用計算時有優(yōu)勢,但是不擅長計算任何一個特定的算法。Xtensa處理器為用戶提供了通過能夠加速特定算法的硬件來區(qū)別的高性能的執(zhí)行各種算法(其思想如圖5所示)。這意味著只要用戶定義的處理器達到了在相同軟件上執(zhí)行的性能,該設(shè)計就不可能被復(fù)制。

圖5 Xtensa LX7處理器提供的添加用戶定義的功能和接口的思想

3.3. 通過FLIX進行并行操作

由圖5可知,用戶自定義功能的實現(xiàn)是通過FLIX。FLIX結(jié)構(gòu)使得Xtensa LX7處理器稱為一個VLIW處理器,如果需要可以實現(xiàn)2-30的并行。FLIX指令的長度為4bytes到16bytes之間的任意值。這種可變長度的FLIX指令可以與Xtensa處理器標(biāo)準(zhǔn)的16/32 bits指令無縫混合,所以不會有模式轉(zhuǎn)換上的損失。圖6展示了用戶使用FLIX創(chuàng)造VLIW進行2-30級的并行操作

通過FLIX(可變長度指令字)Xtensa處理器可以除去在使用VLIW時指令寄存器的冗余損失。事實上,使用FLIX的Xtensa可以同時提供高性能和曉得代碼長度。使用FLIX的損失是很小的,只是增加了2000個門用來進行指令的控制和譯碼,但是帶來的好處是很大的。

Xtensa的C/C++編譯器自動的從源代碼中提取出并行操作并將多種操作加到FLIX中,所以即使不通過額外的軟件資源同樣可以獲得并行計算好處。通過這種方法,一個three-issue的Xtensa LX7處理器在一個較低的頻率下運行也可以達到對應(yīng)其他設(shè)備在相當(dāng)高時鐘頻率下的性能。

圖6. 用戶使用FLIX創(chuàng)造VLIW進行2-30級的并行操作

還有關(guān)于接口的可重構(gòu)方法,以及對應(yīng)的軟件部分由同組其他成員調(diào)研,在此不做講解。

4. 總結(jié)

Xtensa 處理器的實現(xiàn)了對硬件和軟件的共同設(shè)計,通過硬件重構(gòu)進行高性能的計算,通過軟件編程進行高效率的控制。而且Xtensa 處理器結(jié)構(gòu)技術(shù)先進、指令精簡,可以幫助系統(tǒng)設(shè)計師大量縮減編碼的長度,從而提高指令的密集度并降低能耗。這對于高合成的單芯片系統(tǒng) ASIC 而言,是減低成本的重要關(guān)健。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    18921

    瀏覽量

    227190
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1175

    瀏覽量

    119981
收藏 人收藏

    評論

    相關(guān)推薦

    恩智浦i.MX8處理器的集成電源設(shè)計

    電子發(fā)燒友網(wǎng)站提供《恩智浦i.MX8處理器的集成電源設(shè)計.pdf》資料免費下載
    發(fā)表于 09-18 14:25 ?0次下載
    恩智浦i.MX8<b class='flag-5'>處理器</b>的集成電源設(shè)計

    基于全志V853處理器的智能輔助駕駛算法介紹

    全志V853處理器,是專為智慧視覺領(lǐng)域設(shè)計的AI處理器,配備了高效的NPU算力和豐富的外設(shè)接口,能夠提供穩(wěn)定的AI邊緣計算支持;同時,基于V853處理器這一性能優(yōu)勢,全志還為客戶提供了一整套完整的智能輔助駕駛算法。
    的頭像 發(fā)表于 09-14 09:23 ?215次閱讀
    基于全志V853<b class='flag-5'>處理器</b>的智能輔助駕駛算法<b class='flag-5'>介紹</b>

    使用TPS6521815 PMIC為NXP i.MX 7處理器供電

    電子發(fā)燒友網(wǎng)站提供《使用TPS6521815 PMIC為NXP i.MX 7處理器供電.pdf》資料免費下載
    發(fā)表于 09-13 09:40 ?0次下載
    使用TPS6521815 PMIC為NXP i.MX <b class='flag-5'>7</b><b class='flag-5'>處理器</b>供電

    高通驍龍6 Gen 3處理器發(fā)布

    高通公司近日正式推出了驍龍6 Gen 3處理器,這款芯片采用先進的三星4nm工藝打造,代號為SM6475-AB,標(biāo)志著中端處理器市場的新一輪性能革新。
    的頭像 發(fā)表于 09-04 15:43 ?353次閱讀

    RK3568處理器硬件設(shè)計的要點及注意事項

    電子發(fā)燒友網(wǎng)站提供《RK3568處理器硬件設(shè)計的要點及注意事項.pdf》資料免費下載
    發(fā)表于 06-11 11:48 ?1次下載

    國產(chǎn)飛騰D2000處理器的Micro ATX工控主板GM9-2002#國產(chǎn)CPU

    處理器主板
    國產(chǎn)計算機小秦
    發(fā)布于 :2024年05月10日 11:41:37

    適用于ARM Cortex?—A53處理器A53處理器和FPGA的集成電源管理IC TPS65220數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《適用于ARM Cortex?—A53處理器A53處理器和FPGA的集成電源管理IC TPS65220數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 03-27 10:04 ?0次下載
    適用于ARM Cortex?—A53<b class='flag-5'>處理器</b>A53<b class='flag-5'>處理器</b>和FPGA的集成電源管理IC TPS65220數(shù)據(jù)表

    ScaleFlux即將推出集成Arm Cortex-R82處理器的企業(yè)SSD控制

    ScaleFlux宣布,將在其即將推出的企業(yè)級固態(tài)硬盤(SSD)控制系列中整合Arm? Cortex?-R82處理器。
    的頭像 發(fā)表于 03-22 11:25 ?795次閱讀

    M3芯片和i7處理器的區(qū)別

    M3芯片與i7處理器在多個方面存在顯著差異。
    的頭像 發(fā)表于 03-11 16:41 ?2649次閱讀

    業(yè)界首款基于Arm Cortex-M85處理器的MCU

    所有RA8系列MCU均利用Arm Cortex-M85處理器和Arm的Helium技術(shù)所帶來的高性能,結(jié)合矢量/SIMD指令集擴展,能夠在數(shù)字信號處理器(DSP)和機器學(xué)習(xí)(ML)的實施方面獲得相比Cortex-M7內(nèi)核高4倍的
    發(fā)表于 03-05 14:14 ?485次閱讀
    業(yè)界首款基于Arm Cortex-M85<b class='flag-5'>處理器</b>的MCU

    AMD EPYC 9554處理器參數(shù)分析

    AMD EPYC 9554處理器?是第四代AMD EPYC處理器家族中的主流型號,這是一款兼具頻率與核心數(shù)量的處理器。它采用5nm先進制程,“Zen 4”架構(gòu),64核心128線程,三級緩存256MB,基準(zhǔn)時鐘頻率3.1GHz,全
    發(fā)表于 11-20 16:36 ?1267次閱讀
    AMD EPYC 9554<b class='flag-5'>處理器</b>參數(shù)分析

    基于STM32處理器和PC主機的USB通信協(xié)議的實現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《基于STM32處理器和PC主機的USB通信協(xié)議的實現(xiàn).pdf》資料免費下載
    發(fā)表于 10-26 10:05 ?2次下載
    基于STM32<b class='flag-5'>處理器</b>和PC主機的USB通信協(xié)議的實現(xiàn)

    基于ARM9處理器的嵌入式音頻系統(tǒng)設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于ARM9處理器的嵌入式音頻系統(tǒng)設(shè)計.pdf》資料免費下載
    發(fā)表于 10-23 14:12 ?0次下載
    基于ARM9<b class='flag-5'>處理器</b>的嵌入式音頻系統(tǒng)設(shè)計

    ARM9處理器從哪些方面保證了FIQ異常響應(yīng)的快速性?

    ARM9處理器從哪些方面保證了FIQ異常響應(yīng)的快速性? ARM9處理器是一款高性能、低功耗的處理器,它采用了一系列技術(shù)來優(yōu)化FIQ異常響應(yīng)的速度和精度。本文將從以下幾個方面詳細介紹AR
    的頭像 發(fā)表于 10-19 16:36 ?659次閱讀

    STM8處理器編程手冊

    電子發(fā)燒友網(wǎng)站提供《STM8處理器編程手冊.pdf》資料免費下載
    發(fā)表于 10-07 14:38 ?0次下載
    STM8<b class='flag-5'>處理器</b>編程手冊