微控制器取指令方法及其實(shí)現(xiàn)電路的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及微控制器(Micro Controller Unit MCU)領(lǐng)域,特別是涉及一種微控 制器取指令方法。本發(fā)明還涉及一種能實(shí)現(xiàn)所述方法的微控制器取指令電路。
【背景技術(shù)】
[0002] 微控制器產(chǎn)品的最主要任務(wù)就是執(zhí)行程序代碼,因此程序讀取占據(jù)了微控制器操 作的絕大部分。
[0003] 在微控制器設(shè)計(jì)中,一般CPU核的位寬與程序存儲(chǔ)器的位寬相一致。CPU核位寬為 8比特,所采用程序存儲(chǔ)器的位寬同樣為8比特。這樣的話CPU核讀取一條24比特指令碼 就需要讀取三次程序存儲(chǔ)器。
[0004] 目前微控制器的程序存儲(chǔ)器一般采用嵌入式閃存,根據(jù)產(chǎn)品規(guī)格書(shū),臺(tái)積電的 0. 18微米工藝下的低功耗嵌入式閃存,其讀取功耗如表1所示。
[0005]
[0006] 表 1
【主權(quán)項(xiàng)】
1. 一種微控制器取指令方法,其特征在于;采用位寬為兩個(gè)字節(jié)的程序存儲(chǔ)器,來(lái)搭 配位寬為一個(gè)字節(jié)的CPU核;當(dāng)CPU核取指令時(shí),指令讀取電路根據(jù)指令地址一次從指令存 儲(chǔ)器取出兩個(gè)字節(jié)的指令碼;其中一個(gè)字節(jié)的指令碼直接送入CPU核進(jìn)行譯碼,另外一個(gè) 字節(jié)的指令碼則由一個(gè)指令寄存器暫存;在下一個(gè)讀取周期,當(dāng)CPU核讀取下一條指令時(shí), 則直接從所述指令寄存器中讀取該條指令。
2. -種實(shí)現(xiàn)權(quán)利要求1所述方法的微控制器取指令電路,其特征在于,包括: 一CPU核,8比特位寬,其每次能譯碼8比特指令碼,地址線為14比特,可尋址16384字 節(jié)的地址范圍; 一程序存儲(chǔ)器,由16比特位寬的嵌入式閃存構(gòu)成,每次可W讀取16比特指令碼,總?cè)?量為16384個(gè)字節(jié); 一指令讀取電路,將所述CPU核給出的14比特地址[13:0]轉(zhuǎn)換為13比特地址[13:1], 用13比特地址尋址所述程序存儲(chǔ)器; 一指令寄存器,16比特位寬,用于暫存由所述程序存儲(chǔ)器給出的16比特指令碼; 一 8比特指令選擇器,8比特位寬,其輸入為所述指令寄存器中的16比特指令碼,輸出 為高8比特或者低8比特指令碼,選擇信號(hào)是所述CPU核給出的14比特地址的最低位[0]。
【專利摘要】本發(fā)明公開(kāi)了一種微控制器取指令方法,使用16比特位寬的閃存作為程序存儲(chǔ)器,每次讀取16位指令碼,其中8位指令碼立即由CPU核讀取進(jìn)行譯碼操作,另外8位指令碼由指令寄存器暫存。下一個(gè)讀取周期時(shí),CPU核可以直接從指令寄存器讀取8比特指令碼,而不需要從程序存儲(chǔ)器中讀取。本發(fā)明還公開(kāi)了一種實(shí)現(xiàn)所述方法的微控制器取指令電路,包括:一CPU核,為8比特位寬;一程序存儲(chǔ)器,由16比特位寬的嵌入式閃存構(gòu)成;一指令讀取電路,一指令寄存器,為16比特位寬,一選擇器,為8比特位寬。本發(fā)明能有效降低程序存儲(chǔ)器的讀取次數(shù),降低微控制器的取指令功耗。
【IPC分類】G06F9-30
【公開(kāi)號(hào)】CN104714777
【申請(qǐng)?zhí)枴緾N201310673975
【發(fā)明人】牟晨杰, 劉慧 , 王永流
【申請(qǐng)人】上海華虹集成電路有限責(zé)任公司
【公開(kāi)日】2015年6月17日
【申請(qǐng)日】2013年12月11日