Linux驱动开发(硬件基础)——处理器
文章目錄
- 前言
- 通用處理器(SOC)
- 數字信號處理器(DSP)
- 專用處理器和專用集成電路(ASP and ASIC)
- 處理器分類圖
前言
這一章,主要就是針對我們的嵌入式硬件處理器基礎知識進行學習和回顧。
通用處理器(SOC)
目前主流的通用處理器(GPP)多采用Soc(片上系統)的芯片設計方法,集成了各種功能模塊,每一種功能都是由硬件描述語言設計程序,然后在Soc內由電路實現的。在Soc中,每一個模塊不是一個已經設計成熟的ASIC器件(專用集成電路),而是利用芯片的一部分資源去實現某種傳統功能,將各種組件采用類似搭積木的方法組合在一起。
中央處理器的體系結構可以分為兩類,**一類為馮諾依曼結構,另一類為哈佛結構。**Intel公司的中央處理器、ARM7,MIPS公司的MIPS處理器采用的是馮諾依曼結構;而AVR,ARM9,ARM10等以及Cortex A系列采用的是哈佛結構。
馮諾依曼結構也稱普林斯頓結構,是一種將程序指令存儲器和數據存儲器合并在一起的存儲結構。程序指令存儲地址和數據存儲地址指向同一個存儲器的不同物理位置,因此程序指令和數據的寬度相同
哈佛結構將程序指令和數據分開存儲,指令和數據可以有不同的數據寬度。此外哈佛結構還采用了獨立的程序總線和數據總線,分別作為CPU和每個存儲器之間的專用通信路徑,具有較高的執行效率
當然考慮到實際的需求,以及哈佛結構和馮諾依曼結構的各自優勢,現在也多在采用改進的哈佛結構。如下
它具有獨立的地址總線和數據總線,兩條總線由程序存儲器和數據存儲器分時共用。因此,改進的哈佛結構針對程序和數據,其實沒有獨立的總線,而是使用公用數據總線來完成程序存儲模塊或數據存儲模塊與CPU之間的數據傳輸,公用的地址總線來尋址程序和數據。
從指令集的角度來講,中央處理器也可以分為兩類
RISC(精簡指令集)強調盡量減少指令集,指令單周期執行,但是目標代碼會很大
CSIC(復雜指令集)強調增強指令的能力,減少目標代碼的數量,但是指令復雜,指令周期長
ARM,PowerPC,MIPS等采用RISC,現在兩者融合逐漸明顯。
數字信號處理器(DSP)
數字信號處理器針對通信、圖像、語音和視頻處理等領域的算法而設計它包含獨立的硬件乘法器。DSP的乘法指令一般在單周期內完成,且優化了卷積、數字濾波、FFT(快速傅里葉變換)、相關矩陣運算等算法中的大量重復乘法。
DSP分為兩類、一類是定點DSP,另一類是浮點DSP。浮點DSP的浮點運算用硬件來實現,可以在單周期內完成,因為其浮點運算速度遠高于定點DSP,定點DSP只能用定點運算來模擬浮點運算。
現在也出現了通用處理器和數字信號處理器相互融合以取長補短的趨勢,如數字信號控制器(DSC)即MCU+DSP。
專用處理器和專用集成電路(ASP and ASIC)
針對特定的領域而設計的處理器。如HDTV,ADSL,Cable,Modem等的專用處理器。
網絡處理器是一種可編程器件,應用于電信領域的各種任務,如包處理,協議分析等。網絡處理器內部通常由若干個微碼處理器和若干硬件協議處理器組成,多個微碼處理器在網絡處理器內部并行處理,通過預先編制的微碼來控制處理流程。而對于一些復雜的標準操作(如內存操作,路由表查找算法,QoS的擁塞控制算法,流量調度算法等)則采用硬件協處理器來進一步提高處理器性能。
對于某些特定應用場合,使用ASIC往往比直接使用CPU或其他器件來的更加廉價和高效。
處理器分類圖
總結
以上是生活随笔為你收集整理的Linux驱动开发(硬件基础)——处理器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(2439):jsonbin-i
- 下一篇: 信息系统项目管理师证书有什么用?