摘 要:隨著現代科學技術的不斷發展,對ARM微處理器的研究也不斷的發展。本文對微處理器的中斷響應時間進行了實驗研究,對ARM微處理器S3C2440A的中斷處理機制進行分析,并在此基礎上設計了一種實驗測定中斷響應時間的方法,從而對在理想狀態下S3C2440A的快速中斷FIQ和標準中斷IRQ的響應時間做出了對比,對其實驗數據在分析處理之后,進行了模擬函數的研究。
關鍵詞:ARM;微處理器;中斷響應時間;實驗
中圖分類號:TP368.1 文獻標識碼:A 文章編號:2096-4706(2018)04-0034-03
Abstract:With the continuous development of modern science and technology,the research on ARM microprocessor has also been developed continuously,which needs to be studied experimentally in the interrupt response time of the microprocessor. In this paper,the interruption processing mechanism of the ARM microprocessor S3C2440A is analyzed. On this basis,a method of testing the interrupt response time is designed,and the response time of the fast interrupt FIQ and the standard interrupt IRQ in the ideal state is compared,and the experimental data are in the case of the S3C2440A. After analyzing and processing,the simulation function is studied.
Keywords:ARM;microprocessor;interrupt response time;experiment
0 引 言
隨著現代化的建設,ARM微處理器得到了迅速的發展。隨著現代化科技的不斷發展,人們對于性能、速度、存儲量、通信能力、功能的多樣性、開發的方便程度及耗電的多少等不斷提出更高的要求。因此,微處理器的中斷時間響應方面也需要進行實驗和研究,其中ARM處理器就近年來發展十分迅猛的一種體系結構。從51系列單片機到ARM處理器是一個很大的跨越,主要原因是ARM處理器完全不同于51系列單片機,其結構十分復雜。
1 ARM概述
ARM主要應用在單片機的運行中,ARM不屬于單片機,而是一個單片機的內核中央處理器。其運行的過程離不開外圍設備。它可以設計各種模塊,在模塊中,其設計是相對簡單,且比較靈活的,因此比較容易移植。在最終的實現模塊中,鏈接總線中模塊的多少不會對ARM造成很大的影響。在此種情況下,可以在單片機內進行不同功能模塊的設計和實現。
因此在設計的過程中,利用ARM核心技術來進行設計可以保證其穩定性和科學性,設計圖如圖1所示。
模塊的寄存器在總線中有固定的地址,其中的ARM在對地址的操作方面需要實現對寄存器的控制和檢測,最終在各種模塊的控制和檢測的基礎上實現不同的功能。在設計中,ARM核只是把外部模塊作為不同的地址對象,各個模塊的不同對ARM處理器來說,僅僅是地址不同而已。
2 S3C2440A的中斷處理機制
本文主要對S3C2440A的中斷處理機制進行了分析,其中在中斷模式和中斷流程方面主要可以分為兩種類型:標準中斷模式IRQ和快速中斷模式FIQ。
在中斷的過程中,可以在中斷模式寄存器的基礎上實現相應的設置操作,其中的中斷處理器流程圖如圖2所示,在中斷處理流程中,主要包括一級中斷源(Request Sources Without Sub-register)和二級中斷源(Request Sources With Sub-register)的處理流程。與此同時,在FIQ方面,其優先級比IRQ高,并且同時只能有一個中斷源被設置為FIQ模式,所以無須進行優先級仲裁,進入中斷服務程序后也不需要判斷中斷源。
在中斷的相關時鐘信號方面,主要可以分為FCLK和HCLK。其中,HCLK主要實現了對FCLK的分頻處理,其中分頻值通過設置CAMDIVN和CLKDIVN寄存器來確定。在中斷的過程中,主要利用其中的中斷控制器來進行處理,其處理過程需要以硬件的方式來進行中斷控制器的有效處理。在最終的中斷控制器當中,需要進行總線的鏈接,可以稱總線中的具備設備運行時鐘為HCLK。在實際運行的過程中,中斷服務器的執行需要利用CPU來進行具體操作,其中可以運用時鐘的方式來進行決定。具體的運行方式需要根據CPU本身的時鐘模式來進行分析和決定。對于CAMDIVN和CLKDIVN寄存器來說,可以保證HCL和FCLK處于相等的模式,在此種情況下,CPU的時鐘模式應設置為快速總線模式(FastBus Mode,即CPU的缺省時鐘模式)。如果將HCLK和FCLK的狀態設置在了不同的情況,那么CPU本身的時鐘模式需要設置為異步模式的方式。
在分析中斷的響應時間時,需要利用中斷響應時間來進行具體數值的分析,其中主要對中斷觸發到中斷服務器程序入口部分需要的時間進行理論分析。本文主要對S3C2440A用戶手冊進行分析研究,進行FIQ中斷的分析,在此種情況下,如果出現了最長的響應時間,即中斷響應時間,需要對中斷請求信號通過同步器的時間syncmax T、完成當前正在處理的指令的時間ldm T、取數異常的處理時間exc T以及FIQ中斷服務程序入口時間fiq T這幾種因素進行分析。在具體分析時,最長的響應時間為28個處理器時鐘周期。因此在實際的運行過程中,想要達到最長響應時間為1.4μs,則處理器的時鐘頻率需要達到20MHz。IRQ的最長響應時間計算是類似的,但是在實際的操作中,由于FIQ比IRQ的優先級高,因此在系統的延遲方面會對IRQ的響應會造成一定程度的影響,也就是說其中產生的延遲時間主要是根據FIQ中斷服務程序的執行時間決定的。
3 實驗測試
本文主要對主程序和中斷服務程序進行了分析和測試,其中主要的流程圖如圖3所示。
在測試的過程,需要主程序利用寄存器進行設置來完成。在對其進行一級中斷出發的過程中,需要在定時器的基礎上進行實踐。在對其進行測試的過程中,需要將定時器和APB總線(Advanced Peripheral Bus)進行充分的鏈接,此時總線當中包含的所有輸入設備時鐘都可以稱之為PCLK。PCLK可以實現FCLK的分頻處理,在處理的過程中,需要在寄存器CAMDIVN和CLKDIVN的結合下進行分頻設置。對于用戶來說,也需要對寄存器TCFG0和TCFG進行充分的設置,從而實現對PCLK的分頻設置,最終利用此種方式來獲取一定數值的時鐘。在本文的測試中,TMR_CLK設置為PCLK/2,利用的遞減計數器為16bit,需要在TCNTB0寄存器的基礎上進行初始值的設置和設定。在啟動定時器之后,其具備的數值就在時鐘信號的觸發下做出一系列的操作,實現了遞減的效果,最終在達到0的狀態下產生中斷的現象。
4 實驗數據與結論
在本次實驗中,主要對YC2440-F進行了實驗研究,并對其中的硬件配置做出了相關的測試和分析。測試的過程中,在S3C2440A中主要采取了32bit ARM920T內核以及內4KBSRAM來共同實現,并對系統的啟動階段進行實際運行。對運行的時鐘分析過程中,經過測試,可以發現CPU工作頻率FCLK已經達到405MHz的狀態;在對AHB總線頻率HCLK進行測試之后,可以發現其頻率達到136MHz的狀態;對APB總線頻率PCLK經過測試,已經達到了68MHz的狀態。與此同時,在對64MB NAND flash方面進行測試的時候,需要實現對程序存儲的有效測試。在進行測試的實際過程中,需要最大限度地對FIQ和IRQ中斷服務程序進行測試。對CPU時鐘模式可以采用異步模式和快速總線模式進行測試。在高速緩存Cache方面可以采用禁用或啟用的方式。在FCLK頻率方面,主要可以分為405MHz、304MHz和271.5MHz作為測試的數值。在FCLK、HCLK、PCLK的比值方面,采用1:4:8、1:8:8、1:3:6、1:6:6以及1:6:12這幾種情況。對上述數值進行結合,每種工況都需要采集10000個計數值TCNTO0,然后取平均值。本文主要對部分工況下的實驗數進行了統計分析,如表1所示。
在對上述不同工況的中斷響應時間數據進行統計分析之后,進行了圖表的分析和研究,如圖4和圖5所示,其中橫坐標為HCLK,縱坐標為中斷響應時間。
5 結 論
綜上所述,經過本文的實驗研究,在不受到任何干擾的情況下,對ARM微處理器的中斷響應的時間做出了詳細的分析。對實驗數據做出分析的過程中,需要保證中斷控制器本身的運行時鐘頻率處于正常的狀態,從而對其高速緩存做出相對應的有效處理。因此,要獲取較快的中斷響應,就需要使用頻率較高的中斷控制器,最終實現處理器的高速運行。
參考文獻:
[1] 高珍.ARM推出高效64位處理器Cortex—A50系列 [J].通訊世界,單片機與嵌入式系統應用,2012(12):26.
[2] Peter Greenhalgh.ARM的A/R/M設計目標:適合的處理器來執行對應的任務 [J].電子產品世界,2016,23(8):30-33+83.
[3] 張建,李付坤,孫廣富.基于ARM處理器的PC/104模塊設計 [J].微處理機,2008 (2):8-10+14.
[4] 朱望純,張碩,蔣漢林.基于ARM與FPGA高速數據通信接口設計 [J].桂林電子科技大學學報,2017,37(4):293-297.
[5] 張順,嚴宏志,韓奉林,等.基于ARM和freeRTOS的圍棋機器人控制器設計 [J].制造業自動化,2018,40(1):28-32+73.
作者簡介:竇萌萌(1986-),女,漢族,河南鶴壁人,助教,碩士。研究方向:計算機網絡。