趙繼彬,黃海生,李 鑫,朱振興
GPS基帶SoC中軟硬協(xié)同設(shè)計(jì)
趙繼彬,黃海生,李 鑫,朱振興
(西安郵電大學(xué) 電子工程學(xué)院,西安 710121)
針對(duì)ARM公司的ARM926EJ-S型號(hào)硬核形式固化處理器構(gòu)建的全球定位系統(tǒng)(GPS)L1波段(中心頻率為 1575.42MHz)信號(hào)基帶處理的片上系統(tǒng)(SoC)功耗高、成本高的問題,提出一種基于Cortex-M3開源軟核處理器構(gòu)建的GPS基帶SoC系統(tǒng),以實(shí)現(xiàn)處理器核的系統(tǒng)移植:針對(duì)軟件實(shí)現(xiàn)和硬件實(shí)現(xiàn)的特點(diǎn),完成基帶處理的軟硬件功能劃分與協(xié)同設(shè)計(jì);硬件部分選用Cortex-M3軟核和高級(jí)微處理器總線架構(gòu)2.0(AMBA2.0)片上總線為核心進(jìn)行基帶處理SoC架構(gòu)設(shè)計(jì),通過(guò)修改ARM公司提供的總線功能模塊的軟知識(shí)產(chǎn)權(quán)核(IP core),構(gòu)建高級(jí)高性能總線(AHB)和外圍總線(APB)的總體結(jié)構(gòu),設(shè)計(jì)若干符合AMBA2.0協(xié)議的IP核,并完成基帶等相關(guān)IP核的掛接,實(shí)現(xiàn)SoC系統(tǒng)功能的擴(kuò)充;軟件部分通過(guò)C語(yǔ)言完成對(duì)系統(tǒng)的初始化、啟動(dòng)等相關(guān)配置,并編寫衛(wèi)星導(dǎo)航基帶電路的特定測(cè)試信號(hào),實(shí)現(xiàn)軟件對(duì)基帶IP的靈活配置。仿真結(jié)果表明,該系統(tǒng)能夠?qū)崿F(xiàn)對(duì)基帶IP的靈活配置,滿足對(duì)器件的低功耗、微集成要求。
Cortex-M3處理器;微處理器總線架構(gòu);片上系統(tǒng);知識(shí)產(chǎn)權(quán)核;軟硬件協(xié)調(diào)設(shè)計(jì)
實(shí)驗(yàn)室原有基帶系統(tǒng)處理器使用高速精簡(jiǎn)處理器(advanced RISC machines,ARM;其中RISC是精簡(jiǎn)指令集計(jì)算機(jī)(reduced instruction-set computer)的簡(jiǎn)稱)公司的ARM926EJ-S型號(hào)硬核處理器,系統(tǒng)結(jié)構(gòu)采用ARM公司提供的基于高性能總線(advanced high performance bus, AHB)協(xié)議的功能模塊體系結(jié)構(gòu),外加全球定位系統(tǒng)(global positioning system, GPS)基帶知識(shí)產(chǎn)權(quán)核(intellectual property core, IP core)。仿真使用ARM公司高級(jí)微處理器總線架構(gòu)開發(fā)套件中提供的通用模擬AHB總線功能模型模擬處理器的功能,通過(guò)使用特殊命令編寫仿真文件,實(shí)現(xiàn)讀寫功能,完成對(duì)GPS基帶IP寄存器相關(guān)配置。該設(shè)計(jì)原型驗(yàn)證是通過(guò)板級(jí)對(duì)片外總線進(jìn)行連接,不利于片上系統(tǒng)(system on chip , SoC)小型化和功耗成本的降低[1]。
基于以上分析,研究提出一種處理器軟核和總線功能模塊軟IP的集成方案[2-3]。硬件方面,在原有系統(tǒng)結(jié)構(gòu)上實(shí)現(xiàn)處理器內(nèi)核移植工作,重新構(gòu)建基于Cortex-M3軟核的GPS基帶SoC,完成只讀存儲(chǔ)器(read only memory, ROM)、Cortex-M3軟核等相關(guān)IP的系統(tǒng)集成;軟件方面,通過(guò)編寫C語(yǔ)言完成對(duì)系統(tǒng)的初始化、啟動(dòng)等相關(guān)配置,并編寫衛(wèi)星導(dǎo)航基帶電路的特定測(cè)試信號(hào),實(shí)現(xiàn)軟件對(duì)基帶IP的靈活配置,并進(jìn)行調(diào)試仿真驗(yàn)證。
GPS基帶SoC結(jié)構(gòu)如圖1所示,其仿真采用ARM公司提供的通用文件讀取主機(jī)模型(file reader master, FRM)模擬處理器的功能。該模型提供32位和64位數(shù)據(jù)位寬處理模式。本系統(tǒng)使用了32位寬文件讀取主機(jī)模型(32-bit file reader mster, FileRdMaster32),通過(guò)解譯仿真文件中特定格式激勵(lì)文件產(chǎn)生地址、數(shù)據(jù)、控制信息,直接控制總線活動(dòng)。處理器功能模型外部通過(guò)AHB總線接口與外部AHB頂層總線系統(tǒng)(AHB Toplevel,是在ARM公司提供的總線架構(gòu)上進(jìn)行開發(fā)擴(kuò)充的系統(tǒng),其內(nèi)部包含了基帶等相關(guān)外設(shè))進(jìn)行連接。
圖1 SoC系統(tǒng)結(jié)構(gòu)
在整個(gè)系統(tǒng)中通過(guò)ARM公司提供的一個(gè)仿真模擬器(FRM)來(lái)讀取測(cè)試文件,將測(cè)試的數(shù)據(jù)發(fā)送到總線上,以達(dá)到對(duì)寄存器控制的目的。該模型有助于模塊和系統(tǒng)的驗(yàn)證,無(wú)論有沒有處理器,F(xiàn)RM都可以在高級(jí)微處理器總線架構(gòu)(advanced microprocessor bus architecture, AMBA)上運(yùn)行。FRM使用寄存器傳數(shù)據(jù)(register transfer level, RTL)代碼來(lái)描述其邏輯。
FileRdMaster32模型包含3個(gè)部分:File reader core、AHB-Lite to AHB wrapper、Funnel。
File reader core是模擬處理器模型的內(nèi)核,其對(duì)外接口符合AHB-Lite規(guī)范協(xié)議。通過(guò)File reader core讀入仿真文件并將其解碼產(chǎn)生相應(yīng)的數(shù)據(jù)、地址、控制信號(hào)。該內(nèi)核支持在數(shù)據(jù)寬度為8、16、32和64位時(shí)執(zhí)行所有AHB突發(fā)類型,在突發(fā)傳輸類型模式下會(huì)插入忙碌狀態(tài),并且在收到數(shù)據(jù)后會(huì)比較和預(yù)期數(shù)據(jù)的差異,在仿真期間會(huì)對(duì)數(shù)據(jù)的差異進(jìn)行報(bào)告。
AHB-Lite to AHB wrapper是AHB-Lite總線接口到AHB總線接口的轉(zhuǎn)換橋路,實(shí)現(xiàn)與外部AHB總線系統(tǒng)連接。
Funnel是一個(gè)數(shù)據(jù)總線的多路復(fù)用器,用于將64位的總線連接到32位從機(jī)上,即將64位總線上的32位傳輸轉(zhuǎn)換成32位總線上的32位傳輸,對(duì)于不同位寬數(shù)據(jù)的傳輸具有可擴(kuò)展性。
GPS測(cè)試向量主要分為3個(gè)部分,即寄存器的掃描測(cè)試、IP的功能測(cè)試以及錯(cuò)誤的檢測(cè)測(cè)試。其初始輸入的測(cè)試文件基于測(cè)試要求,嚴(yán)格按照一定的命令格式編寫代碼,并生成后綴名為.M2I的文件,該文件具有可視化性,可以編寫代碼配置驗(yàn)證所有模塊寄存器讀寫的功能,配置AHB總線傳輸模式及控制信號(hào),充分模擬軟件,實(shí)現(xiàn)真實(shí)信號(hào)測(cè)試。該測(cè)試文件經(jīng)過(guò)腳本文件Fm2conv.pl按其相關(guān)格式規(guī)則規(guī)范轉(zhuǎn)換成FileRdMaster32可讀取的十六進(jìn)制后綴名為.M2D的文件,最后在行為模型中進(jìn)行模擬仿真。轉(zhuǎn)換流程如圖2所示。
初始輸入的仿真文件主要是由命令和文字域構(gòu)成,命令格式描述如表1所示,其中命令包括W寫操作命令、R讀操作命令以及P輪詢操作命令,文字域規(guī)定了字符順序,其中包括地址、數(shù)據(jù)、掩碼、傳輸數(shù)據(jù)大小、傳輸控制信號(hào)、傳輸反饋和注釋。
表1 仿真文件命令格式描述
Fm2conv.pl將ASCII命令的文件轉(zhuǎn)換成適合FRM讀取的十六進(jìn)制文件。Fm2conv.pl是通過(guò)Perl語(yǔ)言寫的腳本文件,其功能主要檢查指定的命令是否和FRM兼容,將檢測(cè)到的可選字段按一定的格式進(jìn)行輸出。在仿真初始化時(shí),內(nèi)部存儲(chǔ)器模塊設(shè)置在指定的文件中加載數(shù)據(jù),并通過(guò)FRM產(chǎn)生總線傳輸時(shí)序。
本文設(shè)計(jì)為了兼容ARM926EJ-S硬核處理器體系結(jié)構(gòu)、指令集等相關(guān)特性,綜合分析后選用ARM公司ARMv7架構(gòu)的Cortex-M3開源軟核處理器[4]?;鶐oC如圖3所示,其采用Cortex-M3處理器作為核心,控制整個(gè)系統(tǒng)運(yùn)行。處理器和總線架構(gòu)采用AHB協(xié)議簡(jiǎn)化版AHB-Lite協(xié)議到AHB轉(zhuǎn)接口,總線系統(tǒng)采用AHB、外圍總線(advanced peripheral bus,APB)協(xié)議作為系統(tǒng)的互連架構(gòu),將處理器核、片上ROM、隨機(jī)存儲(chǔ)器(random access memory, RAM)、譯碼器、選擇器、通用異步收發(fā)器(universal asynchronous receiver transmitter,UART)接口、基帶信號(hào)處理IP等相關(guān)外設(shè)系統(tǒng)集成,從而實(shí)現(xiàn)內(nèi)部數(shù)據(jù)的交互應(yīng)答[5-6]。
圖3 Cortex-M3基帶信號(hào)處理SoC
Cortex-M3處理器采用哈佛體系結(jié)構(gòu)[7],有代碼存儲(chǔ)區(qū)總線(2條)、系統(tǒng)總線[8](如圖4所示)。代碼存儲(chǔ)區(qū)總線負(fù)責(zé)對(duì)代碼存儲(chǔ)區(qū)的訪問,分別是指令總線(instruction bus, I-Code)和數(shù)據(jù)總線(data bus, D-Code)。前者用于取指,后者用于查表等操作[9],系統(tǒng)總線用于訪問內(nèi)存和外設(shè)。獨(dú)立的指令總線和數(shù)據(jù)總線使得Cortex-M3能同時(shí)取指令和訪問內(nèi)存,從而提升了性能。
相較于傳統(tǒng)ARM處理器,指令和數(shù)據(jù)共用單一總線接口的處理器,它會(huì)把ROM中的數(shù)據(jù)搬移到RAM中處理,進(jìn)而提升數(shù)據(jù)處理效率[10]。然而根據(jù)Cortex-M3的外部總線接口的特點(diǎn),對(duì)于執(zhí)行程序代碼以及只讀數(shù)據(jù)可以通過(guò)I-Code總線和D-Code總線掛接ROM,通過(guò)System總線接口掛接RAM來(lái)存儲(chǔ)執(zhí)行過(guò)程中產(chǎn)生的臨時(shí)變量。同時(shí),原有設(shè)計(jì)已經(jīng)定義了整個(gè)系統(tǒng)的內(nèi)存映射,并且與Cortex-M3規(guī)定的內(nèi)存映射相互兼容。
圖4 Cortex-M3處理器結(jié)構(gòu)
綜上考慮,該設(shè)計(jì)將片上ROM通過(guò)總線復(fù)用器與Cortex-M3的總線接口I-Code總線和D-Code總線相連(如圖5所示)??偩€復(fù)用器的作用是讓指令和數(shù)據(jù)在同一個(gè)總線上傳輸,此復(fù)用器由總線控制信號(hào)完成對(duì)數(shù)據(jù)或指令總線的選斷。
圖5 總線連接
根據(jù)系統(tǒng)存儲(chǔ)空間的應(yīng)用需求,規(guī)定了相關(guān)外設(shè)的映射地址。存儲(chǔ)器映射的地址范圍在0x00000000~0x1FFFFFFF的512MB 空間為代碼區(qū)。GPS基帶的地址范圍在0xC0000000~0xC1FFFFFF的32MB空間,AHB到APB連接橋、RAM模塊等其他的相關(guān)地址范圍在0x90000000~0x9FFFFFFF的256MB空間。
SoC架構(gòu)設(shè)計(jì)如圖6所示(片內(nèi)接口信號(hào)說(shuō)明請(qǐng)參考ARM公司AMBA Design Kit技術(shù)手冊(cè)),在原有AHB系統(tǒng)結(jié)構(gòu)之上進(jìn)行基于Cortex-M3軟核的處理器設(shè)計(jì)以及處理器和總線結(jié)構(gòu)接口設(shè)計(jì)。在此基礎(chǔ)上完成系統(tǒng)軟件設(shè)計(jì),其中包括系統(tǒng)的初始化引導(dǎo)程序及GPS基帶測(cè)試信號(hào)軟件程序。
片上AHB總線為系統(tǒng)各個(gè)IP核之間提供了一種互連以及讀取訪問的共享機(jī)制。Cortex-M3外部總線接口是基于AHB-Lite協(xié)議,對(duì)于外部AHB系統(tǒng)總線架構(gòu),采用AHB-Lite to AHB wrapper進(jìn)行接口協(xié)議轉(zhuǎn)換,設(shè)計(jì)目的是使任何AHB- Lite主機(jī)都能連接到標(biāo)準(zhǔn)的AHB總線。
AHBTopLevel是在ARM公司提供的總線架構(gòu)上進(jìn)行開發(fā)擴(kuò)充的系統(tǒng),其內(nèi)部基于AHB規(guī)范,所有主總線的輸出都是多路復(fù)用,因此只有被授予總線的主總線才能訪問。類似地,所有從機(jī)的輸出也是多路復(fù)用,因此只有被訪問的從機(jī)才將其響應(yīng)放在總線上。這種方法不適用于不同的主機(jī)和從機(jī)在不同的芯片甚至開發(fā)板上的模塊化開發(fā)。因?yàn)橄到y(tǒng)中實(shí)現(xiàn)總線的連接需要大量的信號(hào)線來(lái)連接芯片和主板。為了解決這個(gè)問題,在基于Cortex-M3的基帶SoC系統(tǒng)設(shè)計(jì)時(shí),外部處理器接口與總線系統(tǒng)連接時(shí)使用了三態(tài)緩沖區(qū)來(lái)改善這一問題。
圖6 SoC接口結(jié)構(gòu)
軟件系統(tǒng)具備測(cè)試GPS基帶IP內(nèi)部寄存器以及評(píng)估結(jié)果輸出的功能,對(duì)于預(yù)期數(shù)據(jù)在編寫軟件程序中得以體現(xiàn),若輸出不一致,則會(huì)在仿真報(bào)告中或通過(guò)仿真波形中看到?;谏鲜龃罱ǖ挠布到y(tǒng),針對(duì)測(cè)試要求編寫測(cè)試驗(yàn)證程序,通過(guò)Keil uVision5軟件開發(fā)工具編譯調(diào)試,生成十六進(jìn)制文件,加載到基于RTL的仿真驗(yàn)證環(huán)境中運(yùn)行。
啟動(dòng)代碼的開發(fā)。啟動(dòng)代碼是提前燒寫在ROM中,上電后整個(gè)基帶系統(tǒng)首先要執(zhí)行的一段程序代碼。其作用是負(fù)責(zé)執(zhí)行處理器從“復(fù)位”到開始執(zhí)行“主函數(shù)”之間這段時(shí)間(稱為啟動(dòng)過(guò)程)必須完成的向量表定義、初始化[11]等工作,這個(gè)啟動(dòng)過(guò)程正是啟動(dòng)代碼執(zhí)行的過(guò)程。
本次設(shè)計(jì)采用Cortex-M3軟核進(jìn)行開發(fā),代碼區(qū)內(nèi)存尋址范圍為512MB,開辟ROM起始地址內(nèi)存大小為32kB來(lái)存放主程序。在跳轉(zhuǎn)到main函數(shù)執(zhí)行之前需要執(zhí)行的啟動(dòng)過(guò)程如圖7所示。
1)SoC系統(tǒng)上電后,程序默認(rèn)從ROM可執(zhí)行映像文件中的入口地址0開始啟動(dòng)。
2)初始化堆與棧的空間大小,并指定棧頂?shù)刂贰?/p>
3)根據(jù)硬件結(jié)構(gòu)相應(yīng)外設(shè)初始化中斷向量表。
4)加載復(fù)位處理函數(shù)Reset_Handler。
5)執(zhí)行復(fù)位,處理器的工作狀態(tài)切換為線程模式,開始正常工作。
圖7 啟動(dòng)過(guò)程流程
系統(tǒng)啟動(dòng)后,首先要執(zhí)行啟動(dòng)程序,完成一系列初始化工作,然后跳轉(zhuǎn)到具體的用戶主程序即main函數(shù)去執(zhí)行操作[12]。
主程序設(shè)計(jì),針對(duì)GPS基帶IP的測(cè)試需求,軟件系統(tǒng)能夠?qū)PS基帶IP的測(cè)試相關(guān)模式進(jìn)行配置和信號(hào)控制,測(cè)試寄存器的讀寫、不同模式下信號(hào)掃描控制,設(shè)置GPS基帶內(nèi)部不同通道工作的相關(guān)參數(shù),使其能夠進(jìn)行捕獲、跟蹤控制。圖8描述了其運(yùn)算、寄存器讀取、計(jì)算和寫入的詳細(xì)過(guò)程。
通過(guò)編寫仿真文件主函數(shù)控制程序,最終完成了以上測(cè)試,滿足其功能、性能測(cè)試的要求。
圖8 軟件對(duì)基帶IP頂層控制流程
該系統(tǒng)NC-Verilog對(duì)系統(tǒng)模塊功能進(jìn)行仿真驗(yàn)證。為了驗(yàn)證基帶處理SoC架構(gòu)及功能的正確性、合理性,該設(shè)計(jì)中選取Cortex-M3處理器和外部總線接口的信號(hào)以及基帶外部接口信號(hào)2個(gè)關(guān)鍵點(diǎn)進(jìn)行測(cè)試仿真,分析了TimeA時(shí)刻C014004C地址寄存器寫入0000004C數(shù)據(jù)并讀出的波形(如圖9所示)。
圖9 處理器輸出接口信號(hào)仿真波形
從圖9可以看出,TimeA時(shí)刻,在地址周期通過(guò)HADDRM1、HBURST、HWRITE等信號(hào)傳輸?shù)刂泛涂刂菩畔?,?shù)據(jù)周期通過(guò)HDATAM1傳輸數(shù)據(jù)。當(dāng)HREADYM1拉高,HWRITE拉高,在地址周期時(shí)鐘上升沿,地址C014004C通過(guò)總線傳輸,下個(gè)時(shí)鐘沿到來(lái)時(shí)(數(shù)據(jù)周期),數(shù)據(jù)0000004C通過(guò)總線寫入寄存器。讀操作時(shí),等待HREADYM1信號(hào)拉高,地址周期傳輸相應(yīng)的地址和控制信息,此時(shí)HWRITE拉低,在數(shù)據(jù)周期將C014004C地址中的數(shù)據(jù)讀出。處理器在50MHz時(shí)鐘下連續(xù)讀寫操作如圖10波形所示,可以看出讀寫數(shù)據(jù)準(zhǔn)確性以及執(zhí)行效率,數(shù)據(jù)傳輸位寬為32bit,該系統(tǒng)架構(gòu)吞吐量的最大理論帶寬是 200MB/s,受總線傳輸授權(quán)、信號(hào)握手等環(huán)節(jié)影響,傳輸利用率可達(dá)到95%。
從圖11基帶接口信號(hào)仿真波形可以看出,當(dāng)GPS_SEL拉高時(shí),HREADYin拉高,總線開始傳輸相應(yīng)的控制信息和地址信息,在數(shù)據(jù)周期將數(shù)據(jù)寫入GPS基帶模塊。符合軟件控制和時(shí)序要求。
圖10 處理器輸出接口仿真波形
圖11 基帶接口信號(hào)仿真波形
綜上所述,處理器與外部總線系統(tǒng)接口信號(hào)及基帶模塊外部接口滿足總線傳輸?shù)臅r(shí)序要求,同時(shí)符合軟件程序?qū)鶐到y(tǒng)的配置要求。對(duì)比原有系統(tǒng)信號(hào),波形大體相同,可判定電路工作正常,達(dá)到預(yù)期要求。
本文介紹了SoC的系統(tǒng)總線架構(gòu)設(shè)計(jì),重點(diǎn)介紹了處理器移植過(guò)程中接口設(shè)計(jì)以及軟硬件協(xié)同設(shè)計(jì)。該系統(tǒng)基于AMBA總線協(xié)議實(shí)現(xiàn)開源軟核處理器和可復(fù)用IP核的集成,降低了購(gòu)買處理器的成本。定制的專用SoC內(nèi)部布線相較于原來(lái)硬核處理器和FPGA板級(jí)互連結(jié)構(gòu)降低了互連功耗。系統(tǒng)最終通過(guò)軟硬協(xié)同仿真驗(yàn)證,實(shí)現(xiàn)了衛(wèi)星導(dǎo)航基帶電路的特定測(cè)試信號(hào)對(duì)基帶IP的靈活配置。
[1] 楊銳, 黃海生, 劉宇朝. 基于ARM軟核的智能家居無(wú)線傳感器網(wǎng)絡(luò)設(shè)計(jì)[J]. 信息技術(shù), 2020, 44(5): 6-9.
[2] 潘勝民. 基于AMBA總線協(xié)議的增強(qiáng)型DMA控制器的設(shè)計(jì)[D]. 南京: 東南大學(xué), 2016.
[3] 蔡艷輝, 胡銳, 程鵬飛, 等. 一種基于FPGA+DSP的北斗兼容型高精度接收機(jī)系統(tǒng)設(shè)計(jì)[J]. 導(dǎo)航定位學(xué)報(bào), 2013, 2(2): 1-6.
[4] 趙東升. 基于ARM Cortex-M3核MCU的設(shè)計(jì)與應(yīng)用[D]. 濟(jì)南: 山東大學(xué), 2021.
[5] 唐守龍, 劉昊, 陸生禮. 淺談SoC設(shè)計(jì)中的軟硬件協(xié)同設(shè)計(jì)技術(shù)[J]. 電子器件, 2002, 25(2): 4.
[6] 顏偉成, 陳朝陽(yáng), 沈緒榜. AMBA-AHB總線接口的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)與數(shù)字工程, 2005(10): 130-132.
[7] 嚴(yán)超. 全球定位基帶處理SoC設(shè)計(jì)與關(guān)鍵技術(shù)研究[D]. 重慶: 重慶大學(xué), 2014.
[8] 田澤, 張怡浩, 于敦山, 等. SoC片上總線綜述[J]. 半導(dǎo)體技術(shù), 2003(11): 11-15.
[9] 楊雪梅, 黃海生, 李鑫. 基于AMBA總線的SOC中UART電路的設(shè)計(jì)與實(shí)現(xiàn)[J]. 信息技術(shù), 2019, 43(6): 149-152.
[10] 于樂, 王嘉良. 易于移植的FPGA在線更新控制器設(shè)計(jì)[J]. 航空電子技術(shù), 2015, 46(4): 47-50.
[11] 王一楠, 林濤, 余寧梅. 基于AMBA的AHB總線矩陣設(shè)計(jì)[J]. 微電子學(xué)與計(jì)算機(jī), 2019, 36(2): 73-77.
[12] 馬秦生, 魏翠, 孫力軍, 等. 嵌入式SoC總線分析與研究[J]. 中國(guó)集成電路, 2007(3): 45-49.
Software and hardware cooperative design in GPS baseband SoC
ZHAO Jibin, HUANG Haisheng, LI Xin, ZHU Zhenxing
(School of Electronic Engineering, Xi’an University of Post and Telecommunication, Xi’an 710121, China)
Aiming at the problems of high power consumption and high cost of the system on chip (SoC) of the global positioning system (GPS) L1 band (center frequency: 1575.42MHz) signal baseband processing constructed by the ARM926EJ-S hard core solid core processor, a GPS baseband SoC system based on the Cortex-M3 open-source soft core processor planned by ARM DesignStart was proposed to realize the system transplantation of the core: according to the characteristics of software and hardware implementation, the software and hardware function division and collaborative design of baseband processing were completed; in the hardware part, the Cortex-M3 soft core and the advanced microprocessor bus architecture 2.0 (AMBA2.0) on-chip bus as the core were selected to carry out the baseband processing SoC architecture design; by modifying the soft intellectual property (IP) core of the bus function module provided by ARM company, the overall structure of advanced high performance bus (AHB) and advanced peripheral bus (APB) bus was constructed, several IP cores conforming to AMBA2.0 protocol were designed, and the connection of baseband and other related IP cores was completed; then the function of SoC system was expanded; meanwhile, in the software part, the initialization and startup of the system were completed by C language, and the specific test signal of the satellite navigation baseband was written to realize the flexible configuration of the baseband IP by the software. Simulational result showed that the system could realize the flexible data configuration of baseband system, and meet the requirements of low power consumption and micro integration of devices.
Cortex-M3 processor; advanced microcontroller bus architecture; system on chip; intellectual property core; software and hardware cooperative design
P228
A
2095-4999(2023)01-0163-07
趙繼彬,黃海生,李鑫,等. GPS基帶SoC中軟硬協(xié)同設(shè)計(jì)[J]. 導(dǎo)航定位學(xué)報(bào), 2023, 11(1): 163-169.(ZHAO Jibin, HUANG Haisheng, LI Xin, et al. Software and hardware cooperative design in GPS baseband SoC[J]. Journal of Navigation and Positioning, 2023, 11(1): 163-169.)DOI:10.16547/j.cnki.10-1096.20230125.
2022-09-02
陜西省重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2022GY-011)。
趙繼彬(1997—),男,山東聊城人,碩士研究生,研究方向?yàn)閿?shù)字集成電路設(shè)計(jì)。
黃海生(1964—),男,陜西榆林人,碩士,教授,研究方向?yàn)閷S眉呻娐吩O(shè)計(jì)與系統(tǒng)研究。