亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        專用SoC仿真系統(tǒng)的研究與實(shí)現(xiàn)

        2014-04-25 09:44:04李長波
        關(guān)鍵詞:指令功能系統(tǒng)

        李長波

        (蕪湖職業(yè)技術(shù)學(xué)院,安徽 蕪湖 241000)

        在企業(yè)的研發(fā)中,經(jīng)常遇到硬件軟件化和軟件硬件化的問題。本文論述的是一個(gè)硬件軟件化的問題,用軟件仿真硬件,使用戶在軟件仿真的環(huán)境中完成需要硬件才可以完成的工作。對于各種專用SoC,硬件軟件化的平臺(tái)搭建有較高的技術(shù)含量。

        1 專用SoC的硬件構(gòu)成

        圖1為SoC芯片的構(gòu)成框圖[1],由圖1可以看出,該芯片有十大模塊構(gòu)成,分別是主控MCU、電源、觸摸屏、雙時(shí)鐘、UART、SPI、LCD 控制器、FLASH 驅(qū)動(dòng)、I/O口和存儲(chǔ)器。專用SoC是針對某一類特定需求而設(shè)計(jì)。圖1所示的IC是為了詞典機(jī)設(shè)計(jì)的框架,每一個(gè)應(yīng)用模塊都有對應(yīng)的用途。主控SoC調(diào)度所有的模塊,而且其中還包含累加器、RAM、各種寄存器等資源。存儲(chǔ)器是線性存儲(chǔ)器,要求容量大,存放數(shù)量龐大的詞典數(shù)據(jù)。雙時(shí)鐘模塊要實(shí)現(xiàn)高速運(yùn)算和計(jì)時(shí)功能,開機(jī)時(shí)高速運(yùn)算,關(guān)機(jī)時(shí)保留低速時(shí)鐘計(jì)時(shí);I/O口模塊可以外加各種DSP,如語音,也可以設(shè)計(jì)按鍵。FLASH驅(qū)動(dòng)用來存放可以被用戶修改的數(shù)據(jù)。LCD控制器外接COG類的LCD 作為顯示設(shè)備[2]。

        圖1 SoC的基本構(gòu)成

        2 SoC仿真系統(tǒng)的原理

        2.1 主控SoC的仿真模型的建立[3]

        SoC內(nèi)部有4個(gè)部分要建立模型:累加器、RAM、FLASH、各類寄存器。根據(jù)所仿真的SoC的類型,抽象出它的數(shù)據(jù)模型,如SoC的位數(shù)等。圖2是SoC的基本框圖,從圖2中可以看出,要建立的仿真模型有累加器ACC、寄存器、RAM。寄存器包括SoC各種功能寄存器,如狀態(tài)寄存器、堆棧寄存器、通用寄存器、特殊寄存器等,并且要清楚每個(gè)寄存器每個(gè)位的功能。RAM也包含較多的內(nèi)涵,如全局變量、局部變量、堆棧區(qū)以及特殊變量等的仿真,都需要嚴(yán)密的算法,來保證結(jié)果的正確。

        圖2 處理單元的基本構(gòu)成

        2.2 其它模塊仿真模型的建立[3]

        其它模塊包括:觸摸屏、雙時(shí)鐘、UART、SPI、LCD控制器、FLASH驅(qū)動(dòng)、I/O口和存儲(chǔ)器模塊。對于每一個(gè)外設(shè),系統(tǒng)都為它定義好數(shù)學(xué)模型的同時(shí),開一個(gè)或多個(gè)線程完成對其功能的仿真。圖3為觸摸屏的仿真流程圖,圖4為FLASH的仿真流程圖。從圖3中可以看出,觸摸屏要處理單擊、雙擊和拖動(dòng)三個(gè)事件;FLASH要處理扇區(qū)讀寫問題,而且在寫的時(shí)候,要完成先擦出后寫入的功能。其它模塊與此類似,不重復(fù)敘述。

        圖3 觸摸屏仿真流程圖

        圖4 FLASH讀寫流程圖

        2.3 指令仿真模型的建立[3]

        指令仿真是系統(tǒng)非常關(guān)鍵的部分,每一條指令按照它對應(yīng)的時(shí)序、操作的寄存器、影響的狀態(tài)位、影響的堆棧等都要準(zhǔn)確仿真(圖5)。而且對于指令仿真,不僅要建立單個(gè)指令的數(shù)據(jù)模型,還要建立整個(gè)數(shù)據(jù)指令集合的處理系統(tǒng)。

        圖5 MCS-51的取指時(shí)序

        時(shí)序?qū)蝹€(gè)指令非常關(guān)鍵,下面以總線數(shù)據(jù)寫為例加以說明。從圖5可以看出,每一個(gè)時(shí)間點(diǎn)要非常準(zhǔn)確,系統(tǒng)在進(jìn)行指令仿真時(shí),必須按時(shí)鐘準(zhǔn)確計(jì)算。所以,仿真只能是高速IC仿真低速IC。

        圖6是SoC主控芯片左移指令的流程圖,從圖6中可以看出,指令操作就是數(shù)據(jù)結(jié)構(gòu)的操作,所以,數(shù)據(jù)結(jié)構(gòu)的定義非常關(guān)鍵。當(dāng)前芯片的架構(gòu)主要是ARM和MIPS,而指令集基本使用RISC(Reduced Instruction Set Computing)指令集,所以仿真相對規(guī)范。

        圖6 左移指令流程圖

        把SoC主芯片的指令全部用程序解釋出來之后,這些子模塊需要進(jìn)行管理。本系統(tǒng)建立了一個(gè)指針隊(duì)列加以管理。每個(gè)元素的信息如圖7所示,其顯示了指令集的管理結(jié)構(gòu)。其中指令是一個(gè)指針,指向?qū)?yīng)的指令子模塊,優(yōu)先級(jí)依據(jù)RISC指令集提供信息確定,脈沖數(shù)是該指令占用多少個(gè)脈沖,時(shí)間是該指令執(zhí)行完所消耗的總時(shí)間。

        圖7 指令集管理結(jié)構(gòu)

        3 SoC仿真系統(tǒng)的實(shí)現(xiàn)

        系統(tǒng)使用VC開發(fā)平臺(tái)設(shè)計(jì)完成,在開發(fā)的過程中,大量使用宏定義,有較好的可移植性。

        3.1 總體設(shè)計(jì)

        系統(tǒng)劃分的模塊[4]如圖8所示,共分為5大模塊,分別是處理器模塊、存儲(chǔ)器模塊、指令模塊、外設(shè)模塊和人機(jī)接口模塊。處理器模塊完成處理器的數(shù)據(jù)定義、參數(shù)設(shè)置、程序運(yùn)行等功能;存儲(chǔ)器模塊完成處理器的數(shù)據(jù)定義、參數(shù)設(shè)置、讀寫運(yùn)算等功能;指令模塊完成指令的仿真、指令集合的管理、指令的調(diào)用機(jī)制等功能;外設(shè)模塊完成外設(shè)的數(shù)據(jù)定義、參數(shù)設(shè)置、功能仿真等功能;人機(jī)接口模塊處理系統(tǒng)與用戶的接口。

        圖8 總體模塊的劃分

        3.2 詳細(xì)設(shè)計(jì)

        總體設(shè)計(jì)把系統(tǒng)分成五部分大的模塊,這些模塊還要繼續(xù)分割成小的模塊。模塊越小,任務(wù)越清晰,這是軟件設(shè)計(jì)的基本步驟。這里只以處理器模塊來加以說明,其它的模塊省略。從圖9中可以看出,處理器模塊又劃分出四個(gè)小模塊,分別是現(xiàn)場模塊、指令模塊、時(shí)序模塊和計(jì)算模塊?,F(xiàn)場模塊完成SoC主芯片的累加器、寄存器、RAM等功能;指令模塊完成指令的仿真設(shè)計(jì)和管理;時(shí)序模塊完成SoC晶振的仿真和計(jì)算功能;計(jì)算模塊完成上述三個(gè)模塊的集成及綜合處理的功能。這些小模塊還可以繼續(xù)劃分,直到分成可以直接寫子函數(shù)為止,并且完成流程圖。

        圖9 處理器模塊的劃分

        3.3 代碼轉(zhuǎn)化

        根據(jù)詳細(xì)設(shè)計(jì)的流程圖,程序員可以完成代碼的轉(zhuǎn)化。流程圖代碼化屬于正向工程范疇,先將流程圖轉(zhuǎn)化成流程樹,樹有根節(jié)點(diǎn)和子節(jié)點(diǎn),根節(jié)點(diǎn)表示整個(gè)流程,子節(jié)點(diǎn)可以是控制節(jié)點(diǎn)或代碼節(jié)點(diǎn)。控制節(jié)點(diǎn)可以實(shí)現(xiàn)順序、分支、循環(huán)等控制;代碼節(jié)點(diǎn)實(shí)現(xiàn)函數(shù)調(diào)用、表達(dá)式或代碼段,然后再對流程樹進(jìn)行深度優(yōu)先的遍歷,輸出每個(gè)流程節(jié)點(diǎn)所表示的代碼,最終得到源文件[5-6]。

        3.4 程序測試

        程序測試是指對一個(gè)完成了全部或部分功能、模塊的計(jì)算機(jī)程序在正式使用前的檢測,以確保該程序能按預(yù)定的方式正確地運(yùn)行。測試可以分成白盒測試、黑盒測試和灰盒測試。系統(tǒng)完成之后,通過測試才可以交付使用。本系統(tǒng)使用灰盒測試法,主要由程序設(shè)計(jì)人員自己完成邏輯覆蓋測試和功能覆蓋測試。

        4 結(jié)束語

        本系統(tǒng)完成專用SoC在PC機(jī)上的軟仿真,完成了SoC的軟化功能。本系統(tǒng)的應(yīng)用在兩個(gè)方面:一是產(chǎn)品開發(fā),二是宣傳品制作。開發(fā)一款電子產(chǎn)品,若軟件工作量大,則軟開發(fā)平臺(tái)非常重要。因?yàn)檐浖嗳送瓿?,軟開發(fā)平臺(tái)有高效率和低成本的特點(diǎn),現(xiàn)在很多此類廠商都使用軟件開發(fā)平臺(tái)。另外,當(dāng)前互聯(lián)網(wǎng)的影響非常大,如果能把你的產(chǎn)品做成演示版放在互聯(lián)網(wǎng)上宣傳,效果非常好,仿真軟件在這個(gè)方面起到很大作用。

        [1]張志良.單片機(jī)原理與控制技術(shù)[M].2版.北京:機(jī)械工業(yè)出版社,2007.

        [2]袁志勇.嵌入式系統(tǒng)原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2009.

        [3]徐士良.計(jì)算機(jī)軟件技術(shù)基礎(chǔ)[M].3版.北京:清華大學(xué)出版社,2010.

        [4]奈霍夫.數(shù)據(jù)結(jié)構(gòu)與算法分析[M].2版.北京:清華大學(xué)出版社,2006.

        [5] Donald Hearn,Pauline Baker.Computer Graphics C Version[M].北京:清華大學(xué)出版社,1998.

        [6]黃維通,姚瑞霞.Visual C++程序設(shè)計(jì)教程[M].北京:機(jī)械工業(yè)出版社,2001.

        猜你喜歡
        指令功能系統(tǒng)
        聽我指令:大催眠術(shù)
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        關(guān)于非首都功能疏解的幾點(diǎn)思考
        中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
        日韩av免费一区二区| 国产成人无码A区在线观| 国产韩国精品一区二区三区| 亚洲一区二区懂色av| 欧美肥妇毛多水多bbxx水蜜桃| 精品国产人妻一区二区三区| 人妻无码一区二区在线影院 | 99视频偷拍视频一区二区三区| 亚洲国产av自拍一区| 亚洲av蜜桃永久无码精品| 伊人精品无码AV一区二区三区 | 欧美日韩区1区2区3区| 97久久久一区二区少妇| 亚洲av无码专区国产乱码4se| 变态 另类 欧美 大码 日韩| 日韩亚洲制服丝袜中文字幕| 日韩精品久久伊人中文字幕| 久久婷婷五月综合色高清| 亚洲自偷自拍熟女另类| 女人的天堂av免费看| 国产三级国产精品国产专播| 国产97在线 | 日韩| 两个黑人大战嫩白金发美女| 亚洲av五月天天堂网| 国产实拍日韩精品av在线| 中文字幕免费不卡二区| 国产在线无码免费视频2021| 日本91一区二区不卡| 久久无码字幕中文久久无码| 初尝黑人巨砲波多野结衣| 久久中文字幕久久久久91| 三区中文字幕在线观看| 啦啦啦www播放日本观看| 欧美日韩精品一区二区三区高清视频| 亚洲女同高清精品一区二区99 | 亚洲av第一区综合激情久久久 | 精品999无码在线观看| 久草视频在线手机免费看| 亚洲人午夜射精精品日韩| 欧美日韩国产成人综合在线影院| 精品久久中文字幕一区|