操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    融界2023年12月25日消息,據國家知識產權局公告,騰訊科技(深圳)有限公司取得一項名為“處理器、數據處理方法及計算機設備“的專利,授權公告號CN116881194B,申請日期為2023年9月。

    專利摘要顯示,本申請公開了一種處理器、數據處理方法及計算機設備,屬于計算機技術領域。處理器包括緩沖器和按順序連接的多個模塊,多個模塊用于實現不同功能,多個模塊中包括目標模塊;目標模塊,用于在按照第一指令信息處理第一數據的時長達到預設時長但還未處理完成的情況下,將第一指令信息傳入緩沖器,接收目標模塊的上一個模塊傳入的第二指令信息和第二數據,并行地按照第一指令信息處理第一數據和按照第二指令信息處理第二數據,在將第一數據處理完成后,將第一數據的第一處理結果傳入緩沖器;緩沖器,用于緩存第一指令信息,在接收到第一處理結果后,將第一指令信息和第一處理結果傳入目標模塊的下一個模塊。本申請能夠提高處理器的效率。

    本文源自金融界

    息時代給人們的生活、工作都帶來了質的變化,無紙化辦公也逐漸成為公司管理的潮流。通過飛揚動力廣告公司管理軟件,可以有效對人事、庫存、銷售、生產過程等方面進行科學規范的管理,既方便領導查詢各項經營數據,又給員工的工作提供支撐。作為飛揚動力旗下的一體化廣告公司管理軟件,能夠為廣告企業提供更為方便的業務支撐,為管理者決策提供更為詳實可靠的數據分析。


    廣告企業往往由于產品種類眾多,業務量大,訂單繁多,因此迫切需要建立一套完整的業務流程管理系統,提供快速、準確、及時、全面的信息,滿足企業的快速發展。飛揚動力廣告公司管理軟件提供強大的報表查詢及統計功能,用于統計報表制作及報表數據填報的企業級報表分析功能。主要包括:文件管理功能、格式管理功能、報表數據處理、圖表功能、打印輸出功能等,讓企業能更準確快速的查詢到各項數據。


    軟件提供局域網和互聯網聯機操作,允許多用戶同時在線,支持異地查詢、錄入等功能,讓管理者能隨時隨地的獲取企業經營數據,同時打破了員工工作的空間時間限制,提高了工作效率。


    通過使用飛揚動力廣告公司管理軟件,廣告企業能夠實現了對各部門員工的科學管理,而且提升了整體的工作效率性,使員工績效考核更加嚴格規范,讓企業管理進入了信息化、數字化時代

    、CPU 流水線技術初識

    在當今數字化的時代,計算機已經成為我們生活中不可或缺的一部分。而在計算機的核心部位,中央處理器(CPU)則是其重要的組成部分。CPU 的性能決定了計算機的運行速度和處理能力,而流水線技術則是 CPU 性能提升的關鍵所在。

    1.1 指令執行生命周期回顧

    一條指令的生命周期分為五個階段:

    取指階段(Instruction Fetch):取指階段是指將指令從存儲器中讀取出來的過程。程序指針寄存器用來指定當前指令在存儲器中的位置。讀取一條指令后,程序指針寄存器會根據指令的長度自動遞增,或者改寫成指定的地址。

    譯碼階段(Instruction Decode):指令譯碼是指將存儲器中取出的指令進行翻譯的過程。指令譯碼器對指令進行拆分和解釋,識別出指令類別以及所需的各種操作數。

    執行階段(Instruction Execute):指令執行是指對指令進行真正運算的過程。例如指令是一條加法運算指令,則對操作數進行相加操作;如果是一條乘法運算指令,則進行乘法運算。在“執行”階段最關鍵的模塊為算術邏輯單元(Arithmetic Logical Unit,ALU),它是實施具體運算的硬件功能單元。

    訪存階段(Memory Access):訪存是指存儲器訪問指令將數據從存儲器中讀出,或寫入存儲器的過程。

    寫回階段(Write-Back):寫回是指將指令執行的結果寫回通用寄存器的過程。如果是普通運算指令,該結果值來自于“執行”階段計算的結果;如果是存儲器讀指令,該結果來自于“訪存”階段從存儲器中讀取出來的數據。

    1.2 洗衣服流水線

    什么是流水線?說的官方一點:流水線(Pipelining)是一種實現多條指令重疊的技術。通俗一點來說,跟工廠里面裝配蘋果手機的流水線沒有什么區別,只不過裝配流水線裝配的是手機零件,CPU流水線操作的是計算機指令執行步驟。

    假設非流水線洗衣過程分為 4 個步驟:

    1. 清洗:用洗衣機清洗
    2. 烘干:洗衣機洗完后,放入烘干機烘干
    3. 疊放:烘干衣服后,將衣服從烘干機去除,放在桌子上疊好
    4. 取走:衣服疊好后,將衣服收好或讓顧客取走

    如果采用流水線的方法可以節省大量的時間。如果第一批衣服從洗衣機清洗完拿出來之后進行烘干,就可以把第二批衣服放入洗衣機清洗了。第一批衣服烘干了之后,第二批衣服也清洗完了,可以進行烘干了。

    流水線的奇妙之處在于,對于單獨的一批衣服來說,它的整個過程時間沒有縮短,而在有多批任務并行執行時,流水線的優勢就體現了出來。因為任務在并行執行,單位時間內完成的工作量就大大增加了。流水線實際上是改善了洗衣系統的吞吐率,使得工作效率大大提升。

    可以試想一下,如果所有步驟所需時間一致,并且衣服足夠多,那么采用流水線的速度將會是非流水線的 4 倍,正好等于步驟數。在圖中的洗衣速度只提高了 2.3 倍的原因是圖中只展示了清洗 4 批衣服,流水線在開始和結束階段沒有滿載。

    1.3 CPU 執行指令流水線

    如果流水線各階段操作平衡,那么在流水線上的指令執行時間為(理想情況下):

    流水線指令執行時間=非流水線指令執行時間 / 流水線級數

    假設指令執行所需要的執行時間如下:

    在非流水線方式中,第一條指令與第四條指令之間的時間差是 3*800=2400ps。

    在流水線方式中,第一條指令與第四條指令之間的時間差是 3*200=600ps。

    在圖中的加速比為 2400ps /1400ps,并不等于 4。這是為什么呢?這是因為執行指令的數量不夠多。

    如果在上面流水線中增加 1000000 條指令,每一條指令都將使得整個執行時間增加 200ps,因此整個執行時間變成了 1000000 * 200ps + 1400ps=200001400ps。

    在非流水線方式下,執行時間將變成 1000000 * 800ps + 2400ps=800002400ps。

    二者比值即無限接近于 4。

    1.4 CPU 流水線技術的優勢

    從上面這兩個例子,可以看到流水線技術是很有優勢的:

    1. 提高執行效率:通過并行處理多條指令,流水線技術大大提高了 CPU 的執行效率。
    2. 降低延遲:由于指令可以在多個階段同時進行,因此可以減少等待時間,降低指令執行的延遲。
    3. 提高吞吐量:流水線技術使得 CPU 可以在單位時間內處理更多的指令,從而提高系統的吞吐量。

    二、流水線中的冒險

    流水線技術之所以能提高性能,究其本質是利用了時間上的并行性,那它讓原本應該先后執行的指令在時間上一定程度的并行起來,然而這也會帶來一些沖突和矛盾,進而可能引發錯誤。

    在流水線中我們希望當前每個時鐘周期都有一條指令進入流水線可以執行。但在某些情況下,下一條指令無法按照預期開始執行,這種情況就被稱為冒險。

    冒險分為三種:

    • 結構冒險:如果一條指令需要的硬件部件還在為之前的指令工作,而無法為這條指令提供服務,那就導致了結構冒險。(這里結構是指硬件當中的某個部件)
    • 數據冒險:如果一條指令需要某數據而該數據正在被之前的指令操作,那這條指令就無法執行,就導致了數據冒險。
    • 控制冒險:如果現在要執行哪條指令,是由之前指令的運行結果決定,而現在那條之前指令的結果還沒產生,就導致了控制冒險。

    2.1 結構冒險

    示例一:如果指令和數據放在同一個存儲器中,則不能同時讀存儲器

    解決方案一:我們有一個方便又簡便的方法,即流水線停頓(stall),產生空泡(bubble)。

    雖然流水線停頓能用來解決各種冒險,但它的效率低下,應盡量避免。

    解決方案二(推薦):在存儲器中設置單獨的指令高速緩存和數據高速緩存。(在計算機中主存儲器(內存)是統一存放指令和??據的,這也是馮諾依曼結構的要求,只是在CPU當中 的一級高速緩存會采用指令和數據分別存放的方式)。

    示例二:如果讀寄存器和寫寄存器同時發生,如何處理?

    解決方案(推薦):前半個周期寫,后半個周期讀,并且設置獨立的讀寫端口。

    2.2 數據冒險

    示例一:一條指令需要使用之前指令的結果,但是結果還沒有寫回。

    解決方案一:流水線停頓(stall),產生空泡(bubble)。

    解決方案二(推薦):數據前遞(Forwarding)

    示例二:一條指令需要使用之前指令的運算結果,但是結果還沒有寫回

    解決方案(推薦):數據前遞(Forwarding)

    示例三:一條指令需要使用之前指令的訪存結果(數據前遞無法解決)

    解決方案(推薦):流水線停頓 + 數據前遞

    2.3 控制冒險

    示例一:尚未確定是否發生分支,如何進行下一次取指?

    解決方案一:流水線停頓,產生冒泡

    解決方案二:靜態分支預測,假設分支不發生

    例如,假設經過beq指令分支不發生,最壞情況是其實分支總是發生,所以執行兩條錯誤的lw、sw指令,又執行兩條正確的指令,這樣導致50%的性能浪費。

    這也是因為轉移指令本身和流水線的模式是沖突的,因為轉移指令會改變指令的流向, 而流水線則希望能夠依次地取回指令,將流水線填滿。

    那如果這種情況是非常罕見的,也許我們還可以容忍,但實際上轉移指令是非常常用的指令。

    解決方案三:動態分支預測,類似“天氣預告”

    解決方案四:改造電路,縮短分支延遲

    解決方案五:延遲轉移技術,使流水線不停頓

    三 CPU 動態流水線亂序執行和發射技術

    3.1 什么是動態流水線

    “動態流水線”是通過重新排列指令執行順序來提高 CPU 性能的一種優化技術。

    傳統流水線將指令執行過程劃分為固定的階段,每個階段處理特定的任務。亂序執行則是打破了指令原本的順序執行模式。在亂序執行機制下,只要當前指令所依賴的數據準備就緒,CPU 就可以立即執行該指令,而不必等待前面未準備好的指令,提高了流水線的效率。

    3.2 什么是亂序執行

    亂序執行并不是真的“亂序”,其實是“有序取指、重排列執行順序、有序結束”,指令的結束順序其實是符合軟件中的原始順序的。

    3.3 什么是“發射”

    發射其實是動態流水線專有的術語。動態流水線的電路結構中,新增了“保留站”(Reservation Station),用來保存一組等待執行的指令,有的也稱為“發射隊列”(Issue Queue)。

    將發射隊列中就緒的指令送入功能單元進行執行的操作叫做“發射”。

    3.4 什么是多發射

    多發射(Multiple Issue)是指流水線的每個階段都能處理多于一條的指令

    在亂序執行的 CPU 中,每一個時鐘節拍處理的指令數量超過了一條。在取指階段,一次可以從內存中讀取多條指令;在譯碼階段,可以同時對多條指令分析相關性,并送入不同的發射隊列;在發射階段,每一個時鐘節拍都可以從發射隊列中分別發出一條指令;在執行階段,多個計算單元獨立工作,并行地進行運行。

    多發射并不是說 CPU 有多條流水線,而是在一條流水線上增加了處理指令的寬度,在一個時鐘節拍中可以同時處理多份指令。

    四、小結

    總的來說,CPU 流水線技術是計算機領域一項重要成就,利用了時間上的并行性,讓原本應該先后執行的指令在時間上一定程度的并行起來,然而這也會帶來一些沖突和矛盾(冒險)。雖然流水線冒泡可以解決冒險,但是還有更優雅的方式。“動態流水線”通過重新排列指令執行順序來提高 CPU 性能

    參考資料:北京大學《計算機組成》陸俊林

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有