国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CycloneII EP2C20的8051IP核的應(yīng)用研究

2012-01-15 03:52:02陳西曲葉艷艷
武漢輕工大學(xué)學(xué)報 2012年4期
關(guān)鍵詞:存儲模塊開發(fā)板頂層

樊 峰,陳西曲,葉艷艷

(武漢工業(yè)學(xué)院電氣與電子工程學(xué)院,湖北武漢430023)

隨著數(shù)字集成電路的應(yīng)用越來越廣泛,微電子技術(shù)以及EDA(Electronic Design Automation,電子設(shè)計自動化)技術(shù)的快速發(fā)展,利用FPGA(Field-Programmable Gate Array,現(xiàn)場可編程邏輯門陣列)來進行ASIC(Application Specific Integrated Circuit,專用集成電路)的設(shè)計也越來越流行;不僅僅如此,得益于半導(dǎo)體工藝技術(shù)的不斷發(fā)展,可集成的晶體管數(shù)目已經(jīng)可達到幾千萬個,從而使得微電子及其應(yīng)用領(lǐng)域又發(fā)生了一場革命性變革——SOC(System On Chip,片上系統(tǒng))技術(shù)的研究應(yīng)用和發(fā)展。SOC技術(shù)是以IP(Intellectual Property,知識產(chǎn)權(quán))核復(fù)用技術(shù)為支撐[1],基于IP核的SOC設(shè)計具有易于增加新功能和縮短上市時間的顯著特點,是IC設(shè)計當(dāng)前,乃至以后的主流設(shè)計方式,因此開發(fā)研究可綜合的IP核對SOC技術(shù)的發(fā)展有著很重要的意義。

1 8051IP核整體系統(tǒng)構(gòu)建

基于VerilogHDL語言設(shè)計綜合的8051IP核,其指令集和標準的8051微控制器完全兼容[2];同時兼容匯編程序和C語言程序,其指令執(zhí)行時間為1—4個時鐘周期,執(zhí)行性能卻大大優(yōu)于8051MCU;并且與標準的8051擁有基本相同的內(nèi)部機構(gòu),都是由8-bit微處理器(CPU)、128字節(jié)的片上數(shù)據(jù)存儲器(RAM)、4K字節(jié)的片上程序存儲器(ROM)、兩個16位的定時計數(shù)器、全雙工的通用異步接收發(fā)送器(UART)、兩個優(yōu)先級的5個中斷源、4個I/O口(P0、P1、P2、P3)這8 個主要模塊組成。

1.1 8051IP核的頂層結(jié)構(gòu)

自頂向下(Top—Down)的設(shè)計方法正是EDA技術(shù)相對傳統(tǒng)電子設(shè)計方法的優(yōu)勢所在,Top—Down設(shè)計方法的第一步就是要繪制頂層設(shè)計圖[3]。圖1所示為MC8051 IP核的頂層結(jié)構(gòu)圖,它顯示了MC8051 IP核的頂層結(jié)構(gòu)與三個存儲模塊的連接關(guān)系,以及輸入/輸出口。在MC8051 IP核的設(shè)計中,微處理模塊由運算器(ALU)模塊和控制器模塊組成,并且為了便于IC設(shè)計,MC8051 IP核的I/O口并沒有提供復(fù)用功能,包括4個8位輸入輸出口、串行接口、計數(shù)器輸入口和外部中斷輸入口。各I/O信號的描述如表1所示。

圖1 MC8051 IP核頂層結(jié)構(gòu)圖

表1 頂層信號名

1.2 MC8051 IP核內(nèi)部各模塊的構(gòu)建

mc8051 IP核的內(nèi)部結(jié)構(gòu)模塊主要是存儲模塊和控制模塊,存儲模塊包括RAM、RAMX和ROM,控制模塊包括處理模塊和數(shù)據(jù)輸出模塊,即頂層結(jié)構(gòu)中的mc8051_core模塊。

1.2.1 ROM和RAM模塊的生成

MC8051 IP中所需要的存儲模塊有RAM、外擴RAM、ROM,其中內(nèi)部RAM和ROM是必要的,內(nèi)部RAM固定為128 Bytes,ROM最大可選64 Kbytes,并且外部擴展RAM可選,最大可達64 Kbytes。

RAM和ROM的生成都是利用QuartusII軟件自帶的功能模塊,通過【Tools】>>【MegeWizard Plug-In Manager..】生成。首先新建一個QuartusII工程,進入功能模塊創(chuàng)建向?qū)?,通過功能模塊創(chuàng)建向?qū)ё罱K創(chuàng)建的RAM和ROM模塊如圖2所示。

圖2 RAM、ROM模塊電路圖

RAM和ROM的創(chuàng)建沒有太大的區(qū)別,ROM的創(chuàng)建過程中,需要對其進行初始化,可以添加測試代碼,而RAM不需要初始化。

1.2.2 mc8051_core模塊的創(chuàng)建

mc8051_core模塊包含了處理模塊和數(shù)據(jù)傳輸模塊,是整個模塊的核心;模塊的封裝需要通過第三方的綜合軟件,如Synplify Pro軟件實現(xiàn);首先將前面創(chuàng)建的存儲器模塊添加到工程中;然后利用綜合軟件進行綜合生成 mc8051_top.vqm文件[4],綜合編譯后通過RTL圖來檢查模塊之間連接情況,綜合后得到的RTL圖如圖3所示。

圖3 mc8051_core RTL圖

2 MC8051應(yīng)用測試模塊的創(chuàng)建

2.1 MC8051應(yīng)用系統(tǒng)模塊的創(chuàng)建

首先打開QuartusII軟件,新建一個工程,將上面創(chuàng)建好的mc8051_top.vqm添加到工程中,打開創(chuàng)建的應(yīng)用設(shè)計頂層圖形設(shè)計文件mc8051_top.bsf,為了更好地進行板級測試,并為51核提供合適的時鐘,需要為系統(tǒng)添加一個PLL模塊,以便輸出合適時鐘頻率;添加PLL模塊和添加存儲器RAM一樣,通過【Tools】>>【MegeWizard Plug-In Manager..】生成,只需要設(shè)置好輸入時鐘和輸出時鐘即可;模塊添加完后根據(jù)開發(fā)板引腳連接設(shè)置模塊引腳分配,最后進行編譯;編譯成功后,得到應(yīng)用系統(tǒng)頂層原理圖如圖4所示。

圖4 系統(tǒng)頂層原理圖

2.2 MC8051應(yīng)用系統(tǒng)測試程序

MC8051 IP核完全兼容標準8051指令集,編程語言可以采用C語言,也可采用匯編語言,且可以采用熟悉的開發(fā)工具進行應(yīng)用程序的編寫。本系統(tǒng)采用C語言來編寫測試程序,且在Keil平臺下開發(fā)軟件。主要測試MC8051 IP核的串口、定時/計數(shù)器、中斷、I/O等模塊,將通過Keil軟件編譯后生成的.HEX文件加載到QuartusII工程文件目錄中,并將其初始化到8051IP核的ROM中,然后重新編譯工程生成的配置文件.sof,最后利用QuartusII的下載工具將配置文件下載到EP2C20實驗板中實現(xiàn)8051現(xiàn)實應(yīng)用系統(tǒng)的測試。

2.2.1 外部中斷0的測試程序

void key_down()interrupt 0

{

EX0=0;//關(guān)閉外部中斷0,進行中斷處理

led<<=1;//led左移以為,實現(xiàn)下一個燈點亮

P1=led;//將led值賦值給P1口,P1口連接led燈

if(led==0x00)

{

led=0xff;

}

EX0=1;//打開外部中斷0,繼續(xù)接收外部中斷0的中斷請求

}

利用按鍵來產(chǎn)生外部中斷,P1口讀取led的數(shù)據(jù)來實現(xiàn)按鍵控制流水燈的控制。

2.2.2 串口接收發(fā)送測試程序

char putchar(char ucWriteData)//串口發(fā)送程序

{

SBUF=ucWriteData;//將要發(fā)送的數(shù)據(jù)讀入SBUF寄存器

while(TI);

TI=0;//判斷數(shù)據(jù)是否讀完

return(ucWriteData);//發(fā)送數(shù)據(jù)

}

void UartIsr(void)interrupt 4//串口中斷

{

if(TI)//發(fā)送中斷

{

TI=0;

}

if(RI)//接收中斷

{

RI=0;

Rev=SBUF;

flag=1;

}

}

3 應(yīng)用測試結(jié)果與分析

將構(gòu)建好的測試系統(tǒng)初始化到IP核的ROM中,并對整個系統(tǒng)進行編譯調(diào)試,并下載到EP2C20F484N7開發(fā)板中,利用程序控制,當(dāng)有按鍵按下后,觸發(fā)外部中斷0,點亮第一個LED,再次按鍵,點亮第二個LED燈,從而實現(xiàn)流水燈操作。

串口通信測試結(jié)果如圖5所示,利用定時器1產(chǎn)生115200的波特率來實現(xiàn)串口數(shù)據(jù)的發(fā)送和接收,利用串口調(diào)試助手通過串口發(fā)送數(shù)據(jù)到開發(fā)板上,開發(fā)板接收數(shù)據(jù)后再次發(fā)回給PC機,從而實現(xiàn)8051IP核的串口通信控制。

圖5 串口通信控制圖

4 結(jié)束語

基于EP2C20F484N7的8051 IP核的測試結(jié)果可知,8051 IP核的串口、I/O口、定時器、中斷系統(tǒng)、運算單元、存儲器單元都能夠穩(wěn)定的運行。運用FPGA實現(xiàn)的8051IP核,在高時鐘頻率、穩(wěn)定程度、易于升級、易于擴展使用等諸多方面相對傳統(tǒng)的8051都有了很大的提高,從而大大提高以8051單片機為控制系統(tǒng)的各種應(yīng)用系統(tǒng)的性能參數(shù)。研究8051IP核不僅可以更好的擴展存儲模塊的大小,更能夠利用FPGA系統(tǒng)的豐富資源和IP核的復(fù)用技術(shù),開發(fā)大規(guī)模的工程設(shè)計以及和其它模塊的集成融合,例如移植簡單的TCP/IP協(xié)議,實現(xiàn)一個完整的SOC功能。由此可知8051 IP核良好的復(fù)用性和可移植性在實際應(yīng)用中有重大的意義。

[1] 史江義.基于IP核的SOC設(shè)計關(guān)鍵技術(shù)研究[D].西安:西安電子科技大學(xué),2007.

[2] 張毅剛,彭喜元,董繼成.單片機原理及應(yīng)用[M].北京:高等教育出版社,2003.

[3] 劉小俊.基于EDA技術(shù)的兼容MCS-51單片機IP核的設(shè)計[D].武漢:武漢理工大學(xué),2005.

[4] 李洪偉,袁斯華.基于 QuartusII的 FPGA/CPLD設(shè)計[M].北京:電子工業(yè)出版社,2006.

猜你喜歡
存儲模塊開發(fā)板頂層
基于MinI0分布式存儲的微服務(wù)模塊開發(fā)應(yīng)用
Burden of Cirrhosis and Other Chronic Liver Diseases Caused by Specific Etiologies in China, 1990?2016:Findings from the Global Burden of Disease Study 2016
汽車頂層上的乘客
文苑(2019年24期)2020-01-06 12:06:58
Microchip最新推出兩款PIC32 Curiosity開發(fā)板
淺析單片機開發(fā)板的設(shè)計與制作
電子制作(2017年22期)2017-02-02 07:10:14
MiR-125a-5p is Upregulated in Plasma of Residents from An Electronic Waste Recycling Site
頂層設(shè)計
數(shù)據(jù)采集系統(tǒng)在環(huán)保工程中的應(yīng)用研究
加快頂層設(shè)計
健康卡“卡”在頂層沒聯(lián)網(wǎng)
梅州市| 易门县| 汪清县| 嘉鱼县| 河池市| 微山县| 襄汾县| 罗城| 班戈县| 霍州市| 阳新县| 毕节市| 韩城市| 张北县| 颍上县| 潜山县| 凤阳县| 乐安县| 高阳县| 桐城市| 徐闻县| 青铜峡市| 冕宁县| 吉隆县| 大兴区| 德江县| 肥城市| 墨玉县| 宁德市| 平谷区| 濮阳市| 丰镇市| 嘉峪关市| 石渠县| 汉沽区| 新沂市| 西昌市| 柞水县| 瑞金市| 南丹县| 顺昌县|